Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'release/scripts/startup/bl_ui/properties_render.py')
-rw-r--r--release/scripts/startup/bl_ui/properties_render.py276
1 files changed, 215 insertions, 61 deletions
diff --git a/release/scripts/startup/bl_ui/properties_render.py b/release/scripts/startup/bl_ui/properties_render.py
index bd599bc0cb4..6957f9b7f15 100644
--- a/release/scripts/startup/bl_ui/properties_render.py
+++ b/release/scripts/startup/bl_ui/properties_render.py
@@ -79,7 +79,7 @@ class RENDER_PT_render(RenderButtonsPanel, Panel):
class RENDER_PT_dimensions(RenderButtonsPanel, Panel):
bl_label = "Dimensions"
- COMPAT_ENGINES = {'BLENDER_RENDER'}
+ COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE'}
_frame_rate_args_prev = None
_preset_class = None
@@ -275,6 +275,7 @@ class RENDER_PT_performance(RenderButtonsPanel, Panel):
col.separator()
col.prop(rd, "preview_start_resolution")
+ col.prop(rd, "preview_pixel_size", text="")
col = split.column()
col.label(text="Memory:")
@@ -286,7 +287,7 @@ class RENDER_PT_performance(RenderButtonsPanel, Panel):
sub.prop(rd, "use_free_image_textures")
sub = col.column()
sub.active = rd.use_raytrace
- sub.label(text="Acceleration structure:")
+ sub.label(text="Acceleration Structure:")
sub.prop(rd, "raytrace_method", text="")
if rd.raytrace_method == 'OCTREE':
sub.prop(rd, "octree_resolution", text="Resolution")
@@ -335,7 +336,7 @@ class RENDER_PT_post_processing(RenderButtonsPanel, Panel):
class RENDER_PT_stamp(RenderButtonsPanel, Panel):
bl_label = "Metadata"
bl_options = {'DEFAULT_CLOSED'}
- COMPAT_ENGINES = {'BLENDER_RENDER'}
+ COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE'}
def draw(self, context):
layout = self.layout
@@ -347,7 +348,7 @@ class RENDER_PT_stamp(RenderButtonsPanel, Panel):
col.active = rd.use_stamp
row = col.row()
row.prop(rd, "stamp_font_size", text="Font Size")
- row.prop(rd, "use_stamp_labels", text="Draw labels")
+ row.prop(rd, "use_stamp_labels", text="Draw Labels")
row = col.row()
row.column().prop(rd, "stamp_foreground", slider=True)
@@ -383,7 +384,7 @@ class RENDER_PT_stamp(RenderButtonsPanel, Panel):
class RENDER_PT_output(RenderButtonsPanel, Panel):
bl_label = "Output"
- COMPAT_ENGINES = {'BLENDER_RENDER'}
+ COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE'}
def draw(self, context):
layout = self.layout
@@ -409,37 +410,6 @@ class RENDER_PT_output(RenderButtonsPanel, Panel):
if rd.use_multiview:
layout.template_image_views(image_settings)
- if file_format == 'QUICKTIME':
- quicktime = rd.quicktime
-
- split = layout.split()
- col = split.column()
- col.prop(quicktime, "codec_type", text="Video Codec")
- col.prop(quicktime, "codec_spatial_quality", text="Quality")
-
- # Audio
- col.prop(quicktime, "audiocodec_type", text="Audio Codec")
- if quicktime.audiocodec_type != 'No audio':
- split = layout.split()
- if quicktime.audiocodec_type == 'LPCM':
- split.prop(quicktime, "audio_bitdepth", text="")
-
- split.prop(quicktime, "audio_samplerate", text="")
-
- split = layout.split()
- col = split.column()
- if quicktime.audiocodec_type == 'AAC':
- col.prop(quicktime, "audio_bitrate")
-
- subsplit = split.split()
- col = subsplit.column()
-
- if quicktime.audiocodec_type == 'AAC':
- col.prop(quicktime, "audio_codec_isvbr")
-
- col = subsplit.column()
- col.prop(quicktime, "audio_resampling_hq")
-
class RENDER_PT_encoding(RenderButtonsPanel, Panel):
bl_label = "Encoding"
@@ -482,9 +452,9 @@ class RENDER_PT_encoding(RenderButtonsPanel, Panel):
layout.prop(ffmpeg, "gopsize")
# B-Frames
row = layout.row()
- row.prop(ffmpeg, "use_max_b_frames", text='Max B-frames')
+ row.prop(ffmpeg, "use_max_b_frames", text="Max B-frames")
pbox = row.split()
- pbox.prop(ffmpeg, "max_b_frames", text='')
+ pbox.prop(ffmpeg, "max_b_frames", text="")
pbox.enabled = ffmpeg.use_max_b_frames
split = layout.split()
@@ -616,8 +586,10 @@ class RENDER_PT_clay_collection_settings(RenderButtonsPanel, Panel):
col.prop(props, "ssao_attenuation")
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
@@ -625,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
@@ -646,35 +628,200 @@ 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_samples")
- col.prop(props, "gtao_distance")
- col.prop(props, "gtao_factor")
- 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")
+ col.prop(props, "bloom_color")
col.prop(props, "bloom_intensity")
+ col.prop(props, "bloom_clamp")
+
+
+class RENDER_PT_eevee_volumetric(RenderButtonsPanel, Panel):
+ bl_label = "Volumetric"
+ 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, "volumetric_enable", text="")
+
+ def draw(self, context):
+ layout = self.layout
+ scene = context.scene
+ props = scene.layer_properties['BLENDER_EEVEE']
+
+ layout.active = props.volumetric_enable
+ col = layout.column()
+ col.prop(props, "volumetric_start")
+ col.prop(props, "volumetric_end")
+ col.prop(props, "volumetric_samples")
+ col.prop(props, "volumetric_sample_distribution")
+ col.prop(props, "volumetric_lights")
+ col.prop(props, "volumetric_light_clamp")
+ col.prop(props, "volumetric_shadows")
+ col.prop(props, "volumetric_shadow_samples")
+ col.prop(props, "volumetric_colored_transmittance")
+
+
+class RENDER_PT_eevee_screen_space_reflections(RenderButtonsPanel, Panel):
+ bl_label = "Screen Space Reflections"
+ 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, "ssr_enable", text="")
+
+ def draw(self, context):
+ layout = self.layout
+ scene = context.scene
+ 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")
+ col.prop(props, "ssr_quality")
+ col.prop(props, "ssr_max_roughness")
+ col.prop(props, "ssr_thickness")
+ col.prop(props, "ssr_border_fade")
+ col.prop(props, "ssr_firefly_fac")
+
+
+class RENDER_PT_eevee_shadows(RenderButtonsPanel, Panel):
+ bl_label = "Shadows"
+ 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(self, context):
+ layout = self.layout
+ scene = context.scene
+ props = scene.layer_properties['BLENDER_EEVEE']
+
+ col = layout.column()
+ col.prop(props, "shadow_method")
+ col.prop(props, "shadow_size")
+ col.prop(props, "shadow_high_bitdepth")
+
+
+class RENDER_PT_eevee_sampling(RenderButtonsPanel, Panel):
+ bl_label = "Sampling"
+ 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(self, context):
+ layout = self.layout
+ scene = context.scene
+ props = scene.layer_properties['BLENDER_EEVEE']
+
+ col = layout.column()
+ col.prop(props, "taa_samples")
+
+
+class RENDER_PT_eevee_indirect_lighting(RenderButtonsPanel, Panel):
+ bl_label = "Indirect Lighting"
+ 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(self, context):
+ layout = self.layout
+ scene = context.scene
+ props = scene.layer_properties['BLENDER_EEVEE']
+
+ col = layout.column()
+ col.prop(props, "gi_diffuse_bounces")
classes = (
@@ -694,8 +841,15 @@ classes = (
RENDER_PT_bake,
RENDER_PT_clay_layer_settings,
RENDER_PT_clay_collection_settings,
- RENDER_PT_eevee_poststack_settings,
- RENDER_PT_eevee_postprocess_settings,
+ RENDER_PT_eevee_sampling,
+ RENDER_PT_eevee_shadows,
+ 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.