Changeset View
Changeset View
Standalone View
Standalone View
source/blender/makesrna/intern/rna_render.c
| Show First 20 Lines • Show All 274 Lines • ▼ Show 20 Lines | static void engine_collection_settings_create(RenderEngine *engine, struct IDProperty *props) | ||||
| RNA_parameter_list_create(&list, &ptr, func); | RNA_parameter_list_create(&list, &ptr, func); | ||||
| RNA_parameter_set_lookup(&list, "props", &props); | RNA_parameter_set_lookup(&list, "props", &props); | ||||
| engine->type->ext.call(NULL, &ptr, func, &list); | engine->type->ext.call(NULL, &ptr, func, &list); | ||||
| RNA_parameter_list_free(&list); | RNA_parameter_list_free(&list); | ||||
| } | } | ||||
| static void engine_update_render_passes(RenderEngine *engine, struct Scene *scene, struct SceneLayer *scene_layer) | static void engine_update_render_passes(RenderEngine *engine, struct Scene *scene, struct ViewLayer *view_layer) | ||||
| { | { | ||||
| extern FunctionRNA rna_RenderEngine_update_render_passes_func; | extern FunctionRNA rna_RenderEngine_update_render_passes_func; | ||||
| PointerRNA ptr; | PointerRNA ptr; | ||||
| ParameterList list; | ParameterList list; | ||||
| FunctionRNA *func; | FunctionRNA *func; | ||||
| RNA_pointer_create(NULL, engine->type->ext.srna, engine, &ptr); | RNA_pointer_create(NULL, engine->type->ext.srna, engine, &ptr); | ||||
| func = &rna_RenderEngine_update_render_passes_func; | func = &rna_RenderEngine_update_render_passes_func; | ||||
| RNA_parameter_list_create(&list, &ptr, func); | RNA_parameter_list_create(&list, &ptr, func); | ||||
| RNA_parameter_set_lookup(&list, "scene", &scene); | RNA_parameter_set_lookup(&list, "scene", &scene); | ||||
| RNA_parameter_set_lookup(&list, "renderlayer", &scene_layer); | RNA_parameter_set_lookup(&list, "renderlayer", &view_layer); | ||||
| engine->type->ext.call(NULL, &ptr, func, &list); | engine->type->ext.call(NULL, &ptr, func, &list); | ||||
| RNA_parameter_list_free(&list); | RNA_parameter_list_free(&list); | ||||
| } | } | ||||
| /* RenderEngine registration */ | /* RenderEngine registration */ | ||||
| static void rna_RenderEngine_unregister(Main *bmain, StructRNA *type) | static void rna_RenderEngine_unregister(Main *bmain, StructRNA *type) | ||||
| ▲ Show 20 Lines • Show All 89 Lines • ▼ Show 20 Lines | if (engine->re) { | ||||
| return rna_pointer_inherit_refine(ptr, &RNA_RenderSettings, r); | return rna_pointer_inherit_refine(ptr, &RNA_RenderSettings, r); | ||||
| } | } | ||||
| else { | else { | ||||
| return rna_pointer_inherit_refine(ptr, &RNA_RenderSettings, NULL); | return rna_pointer_inherit_refine(ptr, &RNA_RenderSettings, NULL); | ||||
| } | } | ||||
| } | } | ||||
| static PointerRNA rna_RenderEngine_scene_layer_get(PointerRNA *ptr) | static PointerRNA rna_RenderEngine_view_layer_get(PointerRNA *ptr) | ||||
| { | { | ||||
| RenderEngine *engine = (RenderEngine *)ptr->data; | RenderEngine *engine = (RenderEngine *)ptr->data; | ||||
| if (engine->re != NULL) { | if (engine->re != NULL) { | ||||
| SceneLayer *scene_layer = RE_engine_get_scene_layer(engine->re); | ViewLayer *view_layer = RE_engine_get_view_layer(engine->re); | ||||
| return rna_pointer_inherit_refine(ptr, &RNA_SceneLayer, scene_layer); | return rna_pointer_inherit_refine(ptr, &RNA_ViewLayer, view_layer); | ||||
| } | } | ||||
| return rna_pointer_inherit_refine(ptr, &RNA_SceneLayer, NULL); | return rna_pointer_inherit_refine(ptr, &RNA_ViewLayer, NULL); | ||||
| } | } | ||||
| static PointerRNA rna_RenderEngine_camera_override_get(PointerRNA *ptr) | static PointerRNA rna_RenderEngine_camera_override_get(PointerRNA *ptr) | ||||
| { | { | ||||
| RenderEngine *engine = (RenderEngine *)ptr->data; | RenderEngine *engine = (RenderEngine *)ptr->data; | ||||
| if (engine->re) { | if (engine->re) { | ||||
| Object *cam = RE_GetCamera(engine->re); | Object *cam = RE_GetCamera(engine->re); | ||||
| ▲ Show 20 Lines • Show All 143 Lines • ▼ Show 20 Lines | static void rna_def_render_engine(BlenderRNA *brna) | ||||
| RNA_def_function_flag(func, FUNC_REGISTER_OPTIONAL | FUNC_ALLOW_WRITE); | RNA_def_function_flag(func, FUNC_REGISTER_OPTIONAL | FUNC_ALLOW_WRITE); | ||||
| parm = RNA_def_pointer(func, "node", "Node", "", ""); | parm = RNA_def_pointer(func, "node", "Node", "", ""); | ||||
| RNA_def_parameter_flags(parm, 0, PARM_RNAPTR); | RNA_def_parameter_flags(parm, 0, PARM_RNAPTR); | ||||
| func = RNA_def_function(srna, "update_render_passes", NULL); | func = RNA_def_function(srna, "update_render_passes", NULL); | ||||
| RNA_def_function_ui_description(func, "Update the render passes that will be generated"); | RNA_def_function_ui_description(func, "Update the render passes that will be generated"); | ||||
| RNA_def_function_flag(func, FUNC_REGISTER_OPTIONAL | FUNC_ALLOW_WRITE); | RNA_def_function_flag(func, FUNC_REGISTER_OPTIONAL | FUNC_ALLOW_WRITE); | ||||
| parm = RNA_def_pointer(func, "scene", "Scene", "", ""); | parm = RNA_def_pointer(func, "scene", "Scene", "", ""); | ||||
| parm = RNA_def_pointer(func, "renderlayer", "SceneLayer", "", ""); | parm = RNA_def_pointer(func, "renderlayer", "ViewLayer", "", ""); | ||||
| /* per-collection engine settings initialization */ | /* per-collection engine settings initialization */ | ||||
| func = RNA_def_function(srna, "collection_settings_create", NULL); | func = RNA_def_function(srna, "collection_settings_create", NULL); | ||||
| RNA_def_function_ui_description(func, "Create the per collection settings for the engine"); | RNA_def_function_ui_description(func, "Create the per collection settings for the engine"); | ||||
| RNA_def_function_flag(func, FUNC_REGISTER_OPTIONAL | FUNC_ALLOW_WRITE); | RNA_def_function_flag(func, FUNC_REGISTER_OPTIONAL | FUNC_ALLOW_WRITE); | ||||
| parm = RNA_def_pointer(func, "collection_settings", "LayerCollectionSettings", "", ""); | parm = RNA_def_pointer(func, "collection_settings", "LayerCollectionSettings", "", ""); | ||||
| RNA_def_parameter_flags(parm, 0, PARM_RNAPTR); | RNA_def_parameter_flags(parm, 0, PARM_RNAPTR); | ||||
| ▲ Show 20 Lines • Show All 176 Lines • ▼ Show 20 Lines | static void rna_def_render_engine(BlenderRNA *brna) | ||||
| prop = RNA_def_property(srna, "use_highlight_tiles", PROP_BOOLEAN, PROP_NONE); | prop = RNA_def_property(srna, "use_highlight_tiles", PROP_BOOLEAN, PROP_NONE); | ||||
| RNA_def_property_boolean_sdna(prop, NULL, "flag", RE_ENGINE_HIGHLIGHT_TILES); | RNA_def_property_boolean_sdna(prop, NULL, "flag", RE_ENGINE_HIGHLIGHT_TILES); | ||||
| func = RNA_def_function(srna, "register_pass", "RE_engine_register_pass"); | func = RNA_def_function(srna, "register_pass", "RE_engine_register_pass"); | ||||
| RNA_def_function_ui_description(func, "Register a render pass that will be part of the render with the current settings"); | RNA_def_function_ui_description(func, "Register a render pass that will be part of the render with the current settings"); | ||||
| prop = RNA_def_pointer(func, "scene", "Scene", "", ""); | prop = RNA_def_pointer(func, "scene", "Scene", "", ""); | ||||
| RNA_def_parameter_flags(parm, 0, PARM_REQUIRED); | RNA_def_parameter_flags(parm, 0, PARM_REQUIRED); | ||||
| prop = RNA_def_pointer(func, "scene_layer", "SceneLayer", "", ""); | prop = RNA_def_pointer(func, "view_layer", "ViewLayer", "", ""); | ||||
| RNA_def_parameter_flags(parm, 0, PARM_REQUIRED); | RNA_def_parameter_flags(parm, 0, PARM_REQUIRED); | ||||
| prop = RNA_def_string(func, "name", NULL, MAX_NAME, "Name", ""); | prop = RNA_def_string(func, "name", NULL, MAX_NAME, "Name", ""); | ||||
| RNA_def_parameter_flags(parm, 0, PARM_REQUIRED); | RNA_def_parameter_flags(parm, 0, PARM_REQUIRED); | ||||
| prop = RNA_def_int(func, "channels", 1, 1, 8, "Channels", "", 1, 4); | prop = RNA_def_int(func, "channels", 1, 1, 8, "Channels", "", 1, 4); | ||||
| RNA_def_parameter_flags(parm, 0, PARM_REQUIRED); | RNA_def_parameter_flags(parm, 0, PARM_REQUIRED); | ||||
| prop = RNA_def_string(func, "chanid", NULL, 8, "Channel IDs", ""); | prop = RNA_def_string(func, "chanid", NULL, 8, "Channel IDs", ""); | ||||
| RNA_def_parameter_flags(parm, 0, PARM_REQUIRED); | RNA_def_parameter_flags(parm, 0, PARM_REQUIRED); | ||||
| prop = RNA_def_enum(func, "type", render_pass_type_items, SOCK_FLOAT, "Type", ""); | prop = RNA_def_enum(func, "type", render_pass_type_items, SOCK_FLOAT, "Type", ""); | ||||
| RNA_def_parameter_flags(parm, 0, PARM_REQUIRED); | RNA_def_parameter_flags(parm, 0, PARM_REQUIRED); | ||||
| prop = RNA_def_property(srna, "scene_layer", PROP_POINTER, PROP_NONE); | prop = RNA_def_property(srna, "view_layer", PROP_POINTER, PROP_NONE); | ||||
| RNA_def_property_struct_type(prop, "SceneLayer"); | RNA_def_property_struct_type(prop, "ViewLayer"); | ||||
| RNA_def_property_pointer_funcs(prop, "rna_RenderEngine_scene_layer_get", NULL, NULL, NULL); | RNA_def_property_pointer_funcs(prop, "rna_RenderEngine_view_layer_get", NULL, NULL, NULL); | ||||
| RNA_def_property_ui_text(prop, "Scene layer", ""); | RNA_def_property_ui_text(prop, "Scene layer", ""); | ||||
| /* registration */ | /* registration */ | ||||
| prop = RNA_def_property(srna, "bl_idname", PROP_STRING, PROP_NONE); | prop = RNA_def_property(srna, "bl_idname", PROP_STRING, PROP_NONE); | ||||
| RNA_def_property_string_sdna(prop, NULL, "type->idname"); | RNA_def_property_string_sdna(prop, NULL, "type->idname"); | ||||
| RNA_def_property_flag(prop, PROP_REGISTER); | RNA_def_property_flag(prop, PROP_REGISTER); | ||||
| ▲ Show 20 Lines • Show All 156 Lines • ▼ Show 20 Lines | static void rna_def_render_layer(BlenderRNA *brna) | ||||
| RNA_def_parameter_flags(parm, 0, PARM_REQUIRED); | RNA_def_parameter_flags(parm, 0, PARM_REQUIRED); | ||||
| RNA_def_int(func, "x", 0, 0, INT_MAX, "Offset X", | RNA_def_int(func, "x", 0, 0, INT_MAX, "Offset X", | ||||
| "Offset the position to copy from if the image is larger than the render layer", 0, INT_MAX); | "Offset the position to copy from if the image is larger than the render layer", 0, INT_MAX); | ||||
| RNA_def_int(func, "y", 0, 0, INT_MAX, "Offset Y", | RNA_def_int(func, "y", 0, 0, INT_MAX, "Offset Y", | ||||
| "Offset the position to copy from if the image is larger than the render layer", 0, INT_MAX); | "Offset the position to copy from if the image is larger than the render layer", 0, INT_MAX); | ||||
| RNA_define_verify_sdna(0); | RNA_define_verify_sdna(0); | ||||
| rna_def_render_layer_common(srna, 0); | rna_def_view_layer_common(srna, 0); | ||||
| prop = RNA_def_property(srna, "passes", PROP_COLLECTION, PROP_NONE); | prop = RNA_def_property(srna, "passes", PROP_COLLECTION, PROP_NONE); | ||||
| RNA_def_property_struct_type(prop, "RenderPass"); | RNA_def_property_struct_type(prop, "RenderPass"); | ||||
| RNA_def_property_collection_funcs(prop, "rna_RenderLayer_passes_begin", "rna_iterator_listbase_next", | RNA_def_property_collection_funcs(prop, "rna_RenderLayer_passes_begin", "rna_iterator_listbase_next", | ||||
| "rna_iterator_listbase_end", "rna_iterator_listbase_get", | "rna_iterator_listbase_end", "rna_iterator_listbase_get", | ||||
| NULL, NULL, NULL, NULL); | NULL, NULL, NULL, NULL); | ||||
| rna_def_render_passes(brna, prop); | rna_def_render_passes(brna, prop); | ||||
| ▲ Show 20 Lines • Show All 102 Lines • Show Last 20 Lines | |||||