diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2017-10-03 19:30:36 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2017-10-03 19:30:56 +0300 |
commit | 9422db7796e17bc23a9544d44f2a2e00a9b7e775 (patch) | |
tree | 1f0d3e870d9ef508d4818da107a3fc6d014cf72b /release | |
parent | 57c323b5d3a8227a00f99395bf3779174efe5335 (diff) |
Eevee: Some changes to the Render / Render layers settings panel.
- Separate the Post Processes settings into sub panel.
- Rename "Viewport Anti-Aliasing" to sampling & super-sampling as it also reduce the noise of other effects.
- Remove Temporal Anti-Aliasing toggle and make it always active unless the number of samples is 1.
Diffstat (limited to 'release')
-rw-r--r-- | release/scripts/startup/bl_ui/properties_render.py | 124 | ||||
-rw-r--r-- | release/scripts/startup/bl_ui/properties_render_layer.py | 132 |
2 files changed, 188 insertions, 68 deletions
diff --git a/release/scripts/startup/bl_ui/properties_render.py b/release/scripts/startup/bl_ui/properties_render.py index 91cc8e9a8a2..6957f9b7f15 100644 --- a/release/scripts/startup/bl_ui/properties_render.py +++ b/release/scripts/startup/bl_ui/properties_render.py @@ -587,8 +587,9 @@ class RENDER_PT_clay_collection_settings(RenderButtonsPanel, Panel): col.prop(props, "hair_brightness_randomness") -class RENDER_PT_eevee_poststack_settings(RenderButtonsPanel, Panel): - bl_label = "Post Process Stack" +class RENDER_PT_eevee_ambient_occlusion(RenderButtonsPanel, Panel): + bl_label = "Ambient Occlusion" + bl_options = {'DEFAULT_CLOSED'} COMPAT_ENGINES = {'BLENDER_EEVEE'} @classmethod @@ -596,20 +597,30 @@ class RENDER_PT_eevee_poststack_settings(RenderButtonsPanel, Panel): scene = context.scene return scene and (scene.render.engine in cls.COMPAT_ENGINES) + def draw_header(self, context): + scene = context.scene + props = scene.layer_properties['BLENDER_EEVEE'] + self.layout.prop(props, "gtao_enable", text="") + def draw(self, context): layout = self.layout scene = context.scene props = scene.layer_properties['BLENDER_EEVEE'] + layout.active = props.gtao_enable col = layout.column() - col.prop(props, "gtao_enable") - col.prop(props, "motion_blur_enable") - col.prop(props, "dof_enable") - col.prop(props, "bloom_enable") + col.prop(props, "gtao_use_bent_normals") + col.prop(props, "gtao_denoise") + col.prop(props, "gtao_bounce") + col.prop(props, "gtao_samples") + col.prop(props, "gtao_distance") + col.prop(props, "gtao_factor") + col.prop(props, "gtao_quality") -class RENDER_PT_eevee_postprocess_settings(RenderButtonsPanel, Panel): - bl_label = "Post Process Settings" +class RENDER_PT_eevee_motion_blur(RenderButtonsPanel, Panel): + bl_label = "Motion Blur" + bl_options = {'DEFAULT_CLOSED'} COMPAT_ENGINES = {'BLENDER_EEVEE'} @classmethod @@ -617,34 +628,70 @@ class RENDER_PT_eevee_postprocess_settings(RenderButtonsPanel, Panel): scene = context.scene return scene and (scene.render.engine in cls.COMPAT_ENGINES) + def draw_header(self, context): + scene = context.scene + props = scene.layer_properties['BLENDER_EEVEE'] + self.layout.prop(props, "motion_blur_enable", text="") + def draw(self, context): layout = self.layout scene = context.scene props = scene.layer_properties['BLENDER_EEVEE'] + layout.active = props.motion_blur_enable col = layout.column() - - col.label("Ambient Occlusion:") - col.prop(props, "gtao_use_bent_normals") - col.prop(props, "gtao_denoise") - col.prop(props, "gtao_bounce") - col.prop(props, "gtao_samples") - col.prop(props, "gtao_distance") - col.prop(props, "gtao_factor") - col.prop(props, "gtao_quality") - col.separator() - - col.label("Motion Blur:") col.prop(props, "motion_blur_samples") col.prop(props, "motion_blur_shutter") - col.separator() - col.label("Depth of Field:") + +class RENDER_PT_eevee_depth_of_field(RenderButtonsPanel, Panel): + bl_label = "Depth of Field" + bl_options = {'DEFAULT_CLOSED'} + COMPAT_ENGINES = {'BLENDER_EEVEE'} + + @classmethod + def poll(cls, context): + scene = context.scene + return scene and (scene.render.engine in cls.COMPAT_ENGINES) + + def draw_header(self, context): + scene = context.scene + props = scene.layer_properties['BLENDER_EEVEE'] + self.layout.prop(props, "dof_enable", text="") + + def draw(self, context): + layout = self.layout + scene = context.scene + props = scene.layer_properties['BLENDER_EEVEE'] + + layout.active = props.dof_enable + col = layout.column() col.prop(props, "bokeh_max_size") col.prop(props, "bokeh_threshold") - col.separator() - col.label("Bloom:") + +class RENDER_PT_eevee_bloom(RenderButtonsPanel, Panel): + bl_label = "Bloom" + bl_options = {'DEFAULT_CLOSED'} + COMPAT_ENGINES = {'BLENDER_EEVEE'} + + @classmethod + def poll(cls, context): + scene = context.scene + return scene and (scene.render.engine in cls.COMPAT_ENGINES) + + def draw_header(self, context): + scene = context.scene + props = scene.layer_properties['BLENDER_EEVEE'] + self.layout.prop(props, "bloom_enable", text="") + + def draw(self, context): + layout = self.layout + scene = context.scene + props = scene.layer_properties['BLENDER_EEVEE'] + + layout.active = props.bloom_enable + col = layout.column() col.prop(props, "bloom_threshold") col.prop(props, "bloom_knee") col.prop(props, "bloom_radius") @@ -655,6 +702,7 @@ class RENDER_PT_eevee_postprocess_settings(RenderButtonsPanel, Panel): class RENDER_PT_eevee_volumetric(RenderButtonsPanel, Panel): bl_label = "Volumetric" + bl_options = {'DEFAULT_CLOSED'} COMPAT_ENGINES = {'BLENDER_EEVEE'} @classmethod @@ -687,6 +735,7 @@ class RENDER_PT_eevee_volumetric(RenderButtonsPanel, Panel): class RENDER_PT_eevee_screen_space_reflections(RenderButtonsPanel, Panel): bl_label = "Screen Space Reflections" + bl_options = {'DEFAULT_CLOSED'} COMPAT_ENGINES = {'BLENDER_EEVEE'} @classmethod @@ -705,6 +754,7 @@ class RENDER_PT_eevee_screen_space_reflections(RenderButtonsPanel, Panel): props = scene.layer_properties['BLENDER_EEVEE'] col = layout.column() + col.active = props.ssr_enable col.prop(props, "ssr_refraction") col.prop(props, "ssr_halfres") col.prop(props, "ssr_ray_count") @@ -717,6 +767,7 @@ class RENDER_PT_eevee_screen_space_reflections(RenderButtonsPanel, Panel): class RENDER_PT_eevee_shadows(RenderButtonsPanel, Panel): bl_label = "Shadows" + bl_options = {'DEFAULT_CLOSED'} COMPAT_ENGINES = {'BLENDER_EEVEE'} @classmethod @@ -735,8 +786,9 @@ class RENDER_PT_eevee_shadows(RenderButtonsPanel, Panel): col.prop(props, "shadow_high_bitdepth") -class RENDER_PT_eevee_antialiasing(RenderButtonsPanel, Panel): - bl_label = "Viewport Anti Aliasing" +class RENDER_PT_eevee_sampling(RenderButtonsPanel, Panel): + bl_label = "Sampling" + bl_options = {'DEFAULT_CLOSED'} COMPAT_ENGINES = {'BLENDER_EEVEE'} @classmethod @@ -750,12 +802,12 @@ class RENDER_PT_eevee_antialiasing(RenderButtonsPanel, Panel): props = scene.layer_properties['BLENDER_EEVEE'] col = layout.column() - col.prop(props, "taa_enable") col.prop(props, "taa_samples") -class RENDER_PT_eevee_global_illumination(RenderButtonsPanel, Panel): - bl_label = "Global Illumination" +class RENDER_PT_eevee_indirect_lighting(RenderButtonsPanel, Panel): + bl_label = "Indirect Lighting" + bl_options = {'DEFAULT_CLOSED'} COMPAT_ENGINES = {'BLENDER_EEVEE'} @classmethod @@ -789,13 +841,15 @@ classes = ( RENDER_PT_bake, RENDER_PT_clay_layer_settings, RENDER_PT_clay_collection_settings, - RENDER_PT_eevee_volumetric, - RENDER_PT_eevee_screen_space_reflections, - RENDER_PT_eevee_poststack_settings, - RENDER_PT_eevee_postprocess_settings, + RENDER_PT_eevee_sampling, RENDER_PT_eevee_shadows, - RENDER_PT_eevee_antialiasing, - RENDER_PT_eevee_global_illumination, + RENDER_PT_eevee_indirect_lighting, + RENDER_PT_eevee_screen_space_reflections, + RENDER_PT_eevee_ambient_occlusion, + RENDER_PT_eevee_volumetric, + RENDER_PT_eevee_motion_blur, + RENDER_PT_eevee_depth_of_field, + RENDER_PT_eevee_bloom, ) if __name__ == "__main__": # only for live edit. diff --git a/release/scripts/startup/bl_ui/properties_render_layer.py b/release/scripts/startup/bl_ui/properties_render_layer.py index 69f39ada3b2..a53de764405 100644 --- a/release/scripts/startup/bl_ui/properties_render_layer.py +++ b/release/scripts/startup/bl_ui/properties_render_layer.py @@ -150,8 +150,9 @@ class RENDERLAYER_PT_clay_settings(RenderLayerButtonsPanel, Panel): col.template_override_property(layer_props, scene_props, "ssao_samples") -class RENDERLAYER_PT_eevee_poststack_settings(RenderLayerButtonsPanel, Panel): - bl_label = "Post Process Stack" +class RENDERLAYER_PT_eevee_ambient_occlusion(RenderLayerButtonsPanel, Panel): + bl_label = "Ambient Occlusion" + bl_options = {'DEFAULT_CLOSED'} COMPAT_ENGINES = {'BLENDER_EEVEE'} @classmethod @@ -159,6 +160,14 @@ class RENDERLAYER_PT_eevee_poststack_settings(RenderLayerButtonsPanel, Panel): scene = context.scene return scene and (scene.render.engine in cls.COMPAT_ENGINES) + def draw_header(self, context): + scene = context.scene + scene_props = scene.layer_properties['BLENDER_EEVEE'] + layer = bpy.context.render_layer + layer_props = layer.engine_overrides['BLENDER_EEVEE'] + + self.layout.template_override_property(layer_props, scene_props, "gtao_enable", text="") + def draw(self, context): layout = self.layout scene = context.scene @@ -167,14 +176,18 @@ class RENDERLAYER_PT_eevee_poststack_settings(RenderLayerButtonsPanel, Panel): layer_props = layer.engine_overrides['BLENDER_EEVEE'] col = layout.column() - col.template_override_property(layer_props, scene_props, "gtao_enable") - col.template_override_property(layer_props, scene_props, "motion_blur_enable") - col.template_override_property(layer_props, scene_props, "dof_enable") - col.template_override_property(layer_props, scene_props, "bloom_enable") + col.template_override_property(layer_props, scene_props, "gtao_use_bent_normals") + col.template_override_property(layer_props, scene_props, "gtao_denoise") + col.template_override_property(layer_props, scene_props, "gtao_bounce") + col.template_override_property(layer_props, scene_props, "gtao_samples") + col.template_override_property(layer_props, scene_props, "gtao_distance") + col.template_override_property(layer_props, scene_props, "gtao_factor") + col.template_override_property(layer_props, scene_props, "gtao_quality") -class RENDERLAYER_PT_eevee_postprocess_settings(RenderLayerButtonsPanel, Panel): - bl_label = "Post Process Settings" +class RENDERLAYER_PT_eevee_motion_blur(RenderLayerButtonsPanel, Panel): + bl_label = "Motion Blur" + bl_options = {'DEFAULT_CLOSED'} COMPAT_ENGINES = {'BLENDER_EEVEE'} @classmethod @@ -182,6 +195,14 @@ class RENDERLAYER_PT_eevee_postprocess_settings(RenderLayerButtonsPanel, Panel): scene = context.scene return scene and (scene.render.engine in cls.COMPAT_ENGINES) + def draw_header(self, context): + scene = context.scene + scene_props = scene.layer_properties['BLENDER_EEVEE'] + layer = bpy.context.render_layer + layer_props = layer.engine_overrides['BLENDER_EEVEE'] + + self.layout.template_override_property(layer_props, scene_props, "motion_blur_enable", text="") + def draw(self, context): layout = self.layout scene = context.scene @@ -190,27 +211,66 @@ class RENDERLAYER_PT_eevee_postprocess_settings(RenderLayerButtonsPanel, Panel): layer_props = layer.engine_overrides['BLENDER_EEVEE'] col = layout.column() - col.label("Ambient Occlusion:") - col.template_override_property(layer_props, scene_props, "gtao_use_bent_normals") - col.template_override_property(layer_props, scene_props, "gtao_denoise") - col.template_override_property(layer_props, scene_props, "gtao_bounce") - col.template_override_property(layer_props, scene_props, "gtao_samples") - col.template_override_property(layer_props, scene_props, "gtao_distance") - col.template_override_property(layer_props, scene_props, "gtao_factor") - col.template_override_property(layer_props, scene_props, "gtao_quality") - col.separator() - - col.label("Motion Blur:") col.template_override_property(layer_props, scene_props, "motion_blur_samples") col.template_override_property(layer_props, scene_props, "motion_blur_shutter") - col.separator() - col.label("Depth of Field:") + +class RENDERLAYER_PT_eevee_depth_of_field(RenderLayerButtonsPanel, Panel): + bl_label = "Depth Of Field" + bl_options = {'DEFAULT_CLOSED'} + COMPAT_ENGINES = {'BLENDER_EEVEE'} + + @classmethod + def poll(cls, context): + scene = context.scene + return scene and (scene.render.engine in cls.COMPAT_ENGINES) + + def draw_header(self, context): + scene = context.scene + scene_props = scene.layer_properties['BLENDER_EEVEE'] + layer = bpy.context.render_layer + layer_props = layer.engine_overrides['BLENDER_EEVEE'] + + self.layout.template_override_property(layer_props, scene_props, "dof_enable", text="") + + def draw(self, context): + layout = self.layout + scene = context.scene + scene_props = scene.layer_properties['BLENDER_EEVEE'] + layer = bpy.context.render_layer + layer_props = layer.engine_overrides['BLENDER_EEVEE'] + + col = layout.column() col.template_override_property(layer_props, scene_props, "bokeh_max_size") col.template_override_property(layer_props, scene_props, "bokeh_threshold") - col.separator() - col.label("Bloom:") + +class RENDERLAYER_PT_eevee_bloom(RenderLayerButtonsPanel, Panel): + bl_label = "Bloom" + bl_options = {'DEFAULT_CLOSED'} + COMPAT_ENGINES = {'BLENDER_EEVEE'} + + @classmethod + def poll(cls, context): + scene = context.scene + return scene and (scene.render.engine in cls.COMPAT_ENGINES) + + def draw_header(self, context): + scene = context.scene + scene_props = scene.layer_properties['BLENDER_EEVEE'] + layer = bpy.context.render_layer + layer_props = layer.engine_overrides['BLENDER_EEVEE'] + + self.layout.template_override_property(layer_props, scene_props, "bloom_enable", text="") + + def draw(self, context): + layout = self.layout + scene = context.scene + scene_props = scene.layer_properties['BLENDER_EEVEE'] + layer = bpy.context.render_layer + layer_props = layer.engine_overrides['BLENDER_EEVEE'] + + col = layout.column() col.template_override_property(layer_props, scene_props, "bloom_threshold") col.template_override_property(layer_props, scene_props, "bloom_knee") col.template_override_property(layer_props, scene_props, "bloom_radius") @@ -221,6 +281,7 @@ class RENDERLAYER_PT_eevee_postprocess_settings(RenderLayerButtonsPanel, Panel): class RENDERLAYER_PT_eevee_volumetric(RenderLayerButtonsPanel, Panel): bl_label = "Volumetric" + bl_options = {'DEFAULT_CLOSED'} COMPAT_ENGINES = {'BLENDER_EEVEE'} @classmethod @@ -257,6 +318,7 @@ class RENDERLAYER_PT_eevee_volumetric(RenderLayerButtonsPanel, Panel): class RENDERLAYER_PT_eevee_screen_space_reflections(RenderLayerButtonsPanel, Panel): bl_label = "Screen Space Reflections" + bl_options = {'DEFAULT_CLOSED'} COMPAT_ENGINES = {'BLENDER_EEVEE'} @classmethod @@ -292,6 +354,7 @@ class RENDERLAYER_PT_eevee_screen_space_reflections(RenderLayerButtonsPanel, Pan class RENDERLAYER_PT_eevee_shadows(RenderLayerButtonsPanel, Panel): bl_label = "Shadows" + bl_options = {'DEFAULT_CLOSED'} COMPAT_ENGINES = {'BLENDER_EEVEE'} @classmethod @@ -312,8 +375,9 @@ class RENDERLAYER_PT_eevee_shadows(RenderLayerButtonsPanel, Panel): col.template_override_property(layer_props, scene_props, "shadow_high_bitdepth") -class RENDERLAYER_PT_eevee_antialiasing(RenderLayerButtonsPanel, Panel): - bl_label = "Viewport Anti Aliasing" +class RENDERLAYER_PT_eevee_sampling(RenderLayerButtonsPanel, Panel): + bl_label = "Sampling" + bl_options = {'DEFAULT_CLOSED'} COMPAT_ENGINES = {'BLENDER_EEVEE'} @classmethod @@ -329,12 +393,12 @@ class RENDERLAYER_PT_eevee_antialiasing(RenderLayerButtonsPanel, Panel): layer_props = layer.engine_overrides['BLENDER_EEVEE'] col = layout.column() - col.template_override_property(layer_props, scene_props, "taa_enable") col.template_override_property(layer_props, scene_props, "taa_samples") -class RENDERLAYER_PT_eevee_global_illumination(RenderLayerButtonsPanel, Panel): - bl_label = "Global Illumination" +class RENDERLAYER_PT_eevee_indirect_lighting(RenderLayerButtonsPanel, Panel): + bl_label = "Indirect Lighting" + bl_options = {'DEFAULT_CLOSED'} COMPAT_ENGINES = {'BLENDER_EEVEE'} @classmethod @@ -359,13 +423,15 @@ classes = ( RENDERLAYER_UL_renderviews, RENDERLAYER_PT_views, RENDERLAYER_PT_clay_settings, - RENDERLAYER_PT_eevee_poststack_settings, - RENDERLAYER_PT_eevee_postprocess_settings, + RENDERLAYER_PT_eevee_sampling, + RENDERLAYER_PT_eevee_shadows, + RENDERLAYER_PT_eevee_indirect_lighting, RENDERLAYER_PT_eevee_screen_space_reflections, + RENDERLAYER_PT_eevee_ambient_occlusion, RENDERLAYER_PT_eevee_volumetric, - RENDERLAYER_PT_eevee_shadows, - RENDERLAYER_PT_eevee_antialiasing, - RENDERLAYER_PT_eevee_global_illumination, + RENDERLAYER_PT_eevee_motion_blur, + RENDERLAYER_PT_eevee_depth_of_field, + RENDERLAYER_PT_eevee_bloom, ) if __name__ == "__main__": # only for live edit. |