[Bf-blender-cvs] [12bac207c7] clay-engine: Added scene.active_engine_settings

Clément Foucault noreply at git.blender.org
Mon Jan 30 14:43:11 CET 2017


Commit: 12bac207c7d31206dfca15088bc16587d639dddc
Author: Clément Foucault
Date:   Mon Jan 30 14:41:58 2017 +0100
Branches: clay-engine
https://developer.blender.org/rB12bac207c7d31206dfca15088bc16587d639dddc

Added scene.active_engine_settings

===================================================================

M	release/scripts/startup/bl_ui/properties_render.py
M	source/blender/draw/intern/draw_manager.c
M	source/blender/makesrna/intern/rna_scene.c

===================================================================

diff --git a/release/scripts/startup/bl_ui/properties_render.py b/release/scripts/startup/bl_ui/properties_render.py
index b1c68559d8..5f2c9939dc 100644
--- a/release/scripts/startup/bl_ui/properties_render.py
+++ b/release/scripts/startup/bl_ui/properties_render.py
@@ -590,17 +590,17 @@ class RENDER_PT_clay(RenderButtonsPanel, Panel):
 
     def draw(self, context):
         layout = self.layout;
-        # settings = context.scene.engine_settings
-        # layout.template_icon_view(settings, "matcap_icon")
-        # layout.prop(settings, "matcap_rotation")
-        # layout.prop(settings, "matcap_hue")
-        # layout.prop(settings, "matcap_saturation")
-        # layout.prop(settings, "matcap_value")
-        # layout.prop(settings, "ssao_factor_cavity")
-        # layout.prop(settings, "ssao_factor_edge")
-        # layout.prop(settings, "ssao_distance")
-        # layout.prop(settings, "ssao_attenuation")
-        # layout.prop(settings, "ssao_samples")
+        settings = context.scene.active_engine_settings
+        layout.template_icon_view(settings, "matcap_icon")
+        layout.prop(settings, "matcap_rotation")
+        layout.prop(settings, "matcap_hue")
+        layout.prop(settings, "matcap_saturation")
+        layout.prop(settings, "matcap_value")
+        layout.prop(settings, "ssao_factor_cavity")
+        layout.prop(settings, "ssao_factor_edge")
+        layout.prop(settings, "ssao_distance")
+        layout.prop(settings, "ssao_attenuation")
+        layout.prop(settings, "ssao_samples")
 
 
 if __name__ == "__main__":  # only for live edit.
diff --git a/source/blender/draw/intern/draw_manager.c b/source/blender/draw/intern/draw_manager.c
index 26525954c2..683c0bd178 100644
--- a/source/blender/draw/intern/draw_manager.c
+++ b/source/blender/draw/intern/draw_manager.c
@@ -905,6 +905,8 @@ void *DRW_render_settings_get(Scene *scene, const char *engine_name, void **runt
 			BLI_assert(false);
 		}
 
+		printf("DRW_render_settings_get %s\n", rs->name);
+
 		BLI_addtail(&scene->engines_settings, rs);
 	}
 
diff --git a/source/blender/makesrna/intern/rna_scene.c b/source/blender/makesrna/intern/rna_scene.c
index 2ac8d317b9..604a758980 100644
--- a/source/blender/makesrna/intern/rna_scene.c
+++ b/source/blender/makesrna/intern/rna_scene.c
@@ -1885,6 +1885,19 @@ static StructRNA *rna_RenderEngineSettings_refine(PointerRNA *ptr)
 	return &RNA_RenderEngineSettings;
 }
 
+static PointerRNA rna_RenderEngineSettings_active_get(PointerRNA *ptr)
+{
+	Scene *scene = (Scene *)ptr->data;
+	RenderEngineSettings *res;
+
+	/* Ensure settings exists */
+	DRW_render_settings_get(scene, scene->r.engine, NULL);
+
+	res = BLI_findstring(&scene->engines_settings, scene->r.engine, offsetof(RenderEngineSettings, name));
+
+	return rna_pointer_inherit_refine(ptr, &RNA_RenderEngineSettings, res);
+}
+
 static void rna_RenderEngineSettings_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *ptr)
 {
 	Scene *sce = (Scene *)ptr->id.data;
@@ -8166,6 +8179,11 @@ void RNA_def_scene(BlenderRNA *brna)
 	RNA_def_property_struct_type(prop, "RenderEngineSettings");
 	RNA_def_property_ui_text(prop, "Render Engine Settings", "Engine specific render settings");
 
+	prop = RNA_def_property(srna, "active_engine_settings", PROP_POINTER, PROP_NONE);
+	RNA_def_property_struct_type(prop, "RenderEngineSettings");
+	RNA_def_property_pointer_funcs(prop, "rna_RenderEngineSettings_active_get", NULL, NULL, NULL);
+	RNA_def_property_ui_text(prop, "Active Render Engine Settings", "Active Engine specific render settings for this scene");
+
 	/* Safe Areas */
 	prop = RNA_def_property(srna, "safe_areas", PROP_POINTER, PROP_NONE);
 	RNA_def_property_pointer_sdna(prop, NULL, "safe_areas");




More information about the Bf-blender-cvs mailing list