[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [58429] trunk/blender: Cycles / Sampling Presets:

Thomas Dinges blender at dingto.org
Sat Jul 20 01:59:41 CEST 2013


Revision: 58429
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=58429
Author:   dingto
Date:     2013-07-19 23:59:40 +0000 (Fri, 19 Jul 2013)
Log Message:
-----------
Cycles / Sampling Presets:
* Add Presets for Sampling. This comes with a simple Preview and Final preset, but as this is varying a lot depending on the scene, they should just be a starting point. The user can add own presets here.

* Some UI layout changes to match the settings a bit better. 

Modified Paths:
--------------
    trunk/blender/intern/cycles/blender/addon/presets.py
    trunk/blender/intern/cycles/blender/addon/ui.py

Added Paths:
-----------
    trunk/blender/release/scripts/presets/cycles/sampling/
    trunk/blender/release/scripts/presets/cycles/sampling/final.py
    trunk/blender/release/scripts/presets/cycles/sampling/preview.py

Modified: trunk/blender/intern/cycles/blender/addon/presets.py
===================================================================
--- trunk/blender/intern/cycles/blender/addon/presets.py	2013-07-19 23:31:45 UTC (rev 58428)
+++ trunk/blender/intern/cycles/blender/addon/presets.py	2013-07-19 23:59:40 UTC (rev 58429)
@@ -46,6 +46,36 @@
     preset_subdir = "cycles/integrator"
 
 
+class AddPresetSampling(AddPresetBase, Operator):
+    '''Add a Sampling Preset'''
+    bl_idname = "render.cycles_sampling_preset_add"
+    bl_label = "Add Sampling Preset"
+    preset_menu = "CYCLES_MT_sampling_presets"
+
+    preset_defines = [
+        "cycles = bpy.context.scene.cycles"
+    ]
+
+    preset_values = [
+        "cycles.samples",
+        "cycles.preview_samples",
+        "cycles.aa_samples",
+        "cycles.preview_aa_samples",
+        "cycles.diffuse_samples",
+        "cycles.glossy_samples",
+        "cycles.transmission_samples",
+        "cycles.ao_samples",
+        "cycles.mesh_light_samples",
+        "cycles.subsurface_samples",
+        "cycles.no_caustics",
+        "cycles.blur_glossy",
+        "cycles.squared_samples",
+        "cycles.progressive"
+    ]
+
+    preset_subdir = "cycles/sampling"
+
+
 def register():
     pass
 

Modified: trunk/blender/intern/cycles/blender/addon/ui.py
===================================================================
--- trunk/blender/intern/cycles/blender/addon/ui.py	2013-07-19 23:31:45 UTC (rev 58428)
+++ trunk/blender/intern/cycles/blender/addon/ui.py	2013-07-19 23:59:40 UTC (rev 58429)
@@ -23,6 +23,14 @@
 from bpy.types import Panel, Menu, Operator
 
 
+class CYCLES_MT_sampling_presets(Menu):
+    bl_label = "Sampling Presets"
+    preset_subdir = "cycles/sampling"
+    preset_operator = "script.execute_preset"
+    COMPAT_ENGINES = {'CYCLES'}
+    draw = Menu.draw_preset
+
+
 class CYCLES_MT_integrator_presets(Menu):
     bl_label = "Integrator Presets"
     preset_subdir = "cycles/integrator"
@@ -52,22 +60,30 @@
         scene = context.scene
         cscene = scene.cycles
         device_type = context.user_preferences.system.compute_device_type
+        
+        row = layout.row(align=True)
+        row.menu("CYCLES_MT_sampling_presets", text=bpy.types.CYCLES_MT_sampling_presets.bl_label)
+        row.operator("render.cycles_sampling_preset_add", text="", icon="ZOOMIN")
+        row.operator("render.cycles_sampling_preset_add", text="", icon="ZOOMOUT").remove_active = True
 
+        row = layout.row()
+        sub = row.row()
+        sub.active = (device_type == 'NONE' or cscene.device == 'CPU')
+        sub.prop(cscene, "progressive")
+        row.prop(cscene, "squared_samples")
+        
         split = layout.split()
-
+        
         col = split.column()
-        sub = col.column()
-        sub.active = (device_type == 'NONE' or cscene.device == 'CPU')
-        sub.prop(cscene, "progressive")
-
         sub = col.column(align=True)
+        sub.label("Settings:")
         sub.prop(cscene, "seed")
         sub.prop(cscene, "sample_clamp")
 
         if cscene.progressive or (device_type != 'NONE' and cscene.device == 'GPU'):
             col = split.column()
-            col.label(text="Samples:")
             sub = col.column(align=True)
+            sub.label(text="Samples:")
             sub.prop(cscene, "samples", text="Render")
             sub.prop(cscene, "preview_samples", text="Preview")
         else:
@@ -76,16 +92,14 @@
             sub.prop(cscene, "preview_aa_samples", text="Preview")
 
             col = split.column()
-            col.label(text="Samples:")
             sub = col.column(align=True)
+            sub.label(text="Samples:")
             sub.prop(cscene, "diffuse_samples", text="Diffuse")
             sub.prop(cscene, "glossy_samples", text="Glossy")
             sub.prop(cscene, "transmission_samples", text="Transmission")
             sub.prop(cscene, "ao_samples", text="AO")
             sub.prop(cscene, "mesh_light_samples", text="Mesh Light")
             sub.prop(cscene, "subsurface_samples", text="Subsurface")
-            
-        layout.prop(cscene, "squared_samples")
 
         if cscene.feature_set == 'EXPERIMENTAL' and (device_type == 'NONE' or cscene.device == 'CPU'):
             layout.row().prop(cscene, "sampling_pattern", text="Pattern")

Added: trunk/blender/release/scripts/presets/cycles/sampling/final.py
===================================================================
--- trunk/blender/release/scripts/presets/cycles/sampling/final.py	                        (rev 0)
+++ trunk/blender/release/scripts/presets/cycles/sampling/final.py	2013-07-19 23:59:40 UTC (rev 58429)
@@ -0,0 +1,16 @@
+import bpy
+cycles = bpy.context.scene.cycles
+
+cycles.squared_samples = True
+
+cycles.samples = 8
+cycles.preview_samples = 8
+cycles.aa_samples = 8
+cycles.preview_aa_samples = 8
+
+cycles.diffuse_samples = 3
+cycles.glossy_samples = 2
+cycles.transmission_samples = 2
+cycles.ao_samples = 1
+cycles.mesh_light_samples = 2
+cycles.subsurface_samples = 2

Added: trunk/blender/release/scripts/presets/cycles/sampling/preview.py
===================================================================
--- trunk/blender/release/scripts/presets/cycles/sampling/preview.py	                        (rev 0)
+++ trunk/blender/release/scripts/presets/cycles/sampling/preview.py	2013-07-19 23:59:40 UTC (rev 58429)
@@ -0,0 +1,16 @@
+import bpy
+cycles = bpy.context.scene.cycles
+
+cycles.squared_samples = True
+
+cycles.samples = 4
+cycles.preview_samples = 4
+cycles.aa_samples = 4
+cycles.preview_aa_samples = 4
+
+cycles.diffuse_samples = 3
+cycles.glossy_samples = 2
+cycles.transmission_samples = 2
+cycles.ao_samples = 1
+cycles.mesh_light_samples = 2
+cycles.subsurface_samples = 2




More information about the Bf-blender-cvs mailing list