Changeset View
Changeset View
Standalone View
Standalone View
intern/cycles/blender/addon/ui.py
| Show First 20 Lines • Show All 394 Lines • ▼ Show 20 Lines | def draw(self, context): | ||||
| sub.label(text="Tiles:") | sub.label(text="Tiles:") | ||||
| sub.prop(cscene, "tile_order", text="") | sub.prop(cscene, "tile_order", text="") | ||||
| sub.prop(rd, "tile_x", text="X") | sub.prop(rd, "tile_x", text="X") | ||||
| sub.prop(rd, "tile_y", text="Y") | sub.prop(rd, "tile_y", text="Y") | ||||
| subsub = sub.column() | subsub = sub.column() | ||||
| subsub.active = not rd.use_save_buffers | subsub.active = not rd.use_save_buffers | ||||
| for rl in scene.render_layers: | for view_layer in scene.view_layers: | ||||
| if rl.cycles.use_denoising: | if view_layer.cycles.use_denoising: | ||||
| subsub.active = False | subsub.active = False | ||||
| subsub.prop(cscene, "use_progressive_refine") | subsub.prop(cscene, "use_progressive_refine") | ||||
| col = split.column() | col = split.column() | ||||
| col.label(text="Final Render:") | col.label(text="Final Render:") | ||||
| col.prop(rd, "use_save_buffers") | col.prop(rd, "use_save_buffers") | ||||
| col.prop(rd, "use_persistent_data", text="Persistent Images") | col.prop(rd, "use_persistent_data", text="Persistent Images") | ||||
| Show All 12 Lines | def draw(self, context): | ||||
| col.label(text="Viewport Resolution:") | col.label(text="Viewport Resolution:") | ||||
| split = col.split() | split = col.split() | ||||
| split.prop(rd, "preview_pixel_size", text="") | split.prop(rd, "preview_pixel_size", text="") | ||||
| split.prop(cscene, "preview_start_resolution") | split.prop(cscene, "preview_start_resolution") | ||||
| class CYCLES_RENDER_PT_layer_options(CyclesButtonsPanel, Panel): | class CYCLES_RENDER_PT_layer_options(CyclesButtonsPanel, Panel): | ||||
| bl_label = "Layer" | bl_label = "Layer" | ||||
| bl_context = "render_layer" | bl_context = "view_layer" | ||||
| def draw(self, context): | def draw(self, context): | ||||
| layout = self.layout | layout = self.layout | ||||
| scene = context.scene | scene = context.scene | ||||
| rl = scene.render_layers.active | view_layer = scene.view_layers.active | ||||
| col = layout.column() | col = layout.column() | ||||
| col.prop(rl, "use_sky", "Use Environment") | col.prop(view_layer, "use_sky", "Use Environment") | ||||
| col.prop(rl, "use_ao", "Use AO") | col.prop(view_layer, "use_ao", "Use AO") | ||||
| col.prop(rl, "use_solid", "Use Surfaces") | col.prop(view_layer, "use_solid", "Use Surfaces") | ||||
| col.prop(rl, "use_strand", "Use Hair") | col.prop(view_layer, "use_strand", "Use Hair") | ||||
| class CYCLES_RENDER_PT_layer_passes(CyclesButtonsPanel, Panel): | class CYCLES_RENDER_PT_layer_passes(CyclesButtonsPanel, Panel): | ||||
| bl_label = "Passes" | bl_label = "Passes" | ||||
| bl_context = "render_layer" | bl_context = "view_layer" | ||||
| bl_options = {'DEFAULT_CLOSED'} | bl_options = {'DEFAULT_CLOSED'} | ||||
| def draw(self, context): | def draw(self, context): | ||||
| import _cycles | import _cycles | ||||
| layout = self.layout | layout = self.layout | ||||
| scene = context.scene | scene = context.scene | ||||
| rd = scene.render | rd = scene.render | ||||
| rl = scene.render_layers.active | view_layer = scene.view_layers.active | ||||
| crl = rl.cycles | cycles_view_layer = view_layer.cycles | ||||
| split = layout.split() | split = layout.split() | ||||
| col = split.column() | col = split.column() | ||||
| col.prop(rl, "use_pass_combined") | col.prop(view_layer, "use_pass_combined") | ||||
| col.prop(rl, "use_pass_z") | col.prop(view_layer, "use_pass_z") | ||||
| col.prop(rl, "use_pass_mist") | col.prop(view_layer, "use_pass_mist") | ||||
| col.prop(rl, "use_pass_normal") | col.prop(view_layer, "use_pass_normal") | ||||
| row = col.row() | row = col.row() | ||||
| row.prop(rl, "use_pass_vector") | row.prop(view_layer, "use_pass_vector") | ||||
| row.active = not rd.use_motion_blur | row.active = not rd.use_motion_blur | ||||
| col.prop(rl, "use_pass_uv") | col.prop(view_layer, "use_pass_uv") | ||||
| col.prop(rl, "use_pass_object_index") | col.prop(view_layer, "use_pass_object_index") | ||||
| col.prop(rl, "use_pass_material_index") | col.prop(view_layer, "use_pass_material_index") | ||||
| col.separator() | col.separator() | ||||
| col.prop(rl, "use_pass_shadow") | col.prop(view_layer, "use_pass_shadow") | ||||
| col.prop(rl, "use_pass_ambient_occlusion") | col.prop(view_layer, "use_pass_ambient_occlusion") | ||||
| col.separator() | col.separator() | ||||
| col.prop(rl, "pass_alpha_threshold") | col.prop(view_layer, "pass_alpha_threshold") | ||||
| col = split.column() | col = split.column() | ||||
| col.label(text="Diffuse:") | col.label(text="Diffuse:") | ||||
| row = col.row(align=True) | row = col.row(align=True) | ||||
| row.prop(rl, "use_pass_diffuse_direct", text="Direct", toggle=True) | row.prop(view_layer, "use_pass_diffuse_direct", text="Direct", toggle=True) | ||||
| row.prop(rl, "use_pass_diffuse_indirect", text="Indirect", toggle=True) | row.prop(view_layer, "use_pass_diffuse_indirect", text="Indirect", toggle=True) | ||||
| row.prop(rl, "use_pass_diffuse_color", text="Color", toggle=True) | row.prop(view_layer, "use_pass_diffuse_color", text="Color", toggle=True) | ||||
| col.label(text="Glossy:") | col.label(text="Glossy:") | ||||
| row = col.row(align=True) | row = col.row(align=True) | ||||
| row.prop(rl, "use_pass_glossy_direct", text="Direct", toggle=True) | row.prop(view_layer, "use_pass_glossy_direct", text="Direct", toggle=True) | ||||
| row.prop(rl, "use_pass_glossy_indirect", text="Indirect", toggle=True) | row.prop(view_layer, "use_pass_glossy_indirect", text="Indirect", toggle=True) | ||||
| row.prop(rl, "use_pass_glossy_color", text="Color", toggle=True) | row.prop(view_layer, "use_pass_glossy_color", text="Color", toggle=True) | ||||
| col.label(text="Transmission:") | col.label(text="Transmission:") | ||||
| row = col.row(align=True) | row = col.row(align=True) | ||||
| row.prop(rl, "use_pass_transmission_direct", text="Direct", toggle=True) | row.prop(view_layer, "use_pass_transmission_direct", text="Direct", toggle=True) | ||||
| row.prop(rl, "use_pass_transmission_indirect", text="Indirect", toggle=True) | row.prop(view_layer, "use_pass_transmission_indirect", text="Indirect", toggle=True) | ||||
| row.prop(rl, "use_pass_transmission_color", text="Color", toggle=True) | row.prop(view_layer, "use_pass_transmission_color", text="Color", toggle=True) | ||||
| col.label(text="Subsurface:") | col.label(text="Subsurface:") | ||||
| row = col.row(align=True) | row = col.row(align=True) | ||||
| row.prop(rl, "use_pass_subsurface_direct", text="Direct", toggle=True) | row.prop(view_layer, "use_pass_subsurface_direct", text="Direct", toggle=True) | ||||
| row.prop(rl, "use_pass_subsurface_indirect", text="Indirect", toggle=True) | row.prop(view_layer, "use_pass_subsurface_indirect", text="Indirect", toggle=True) | ||||
| row.prop(rl, "use_pass_subsurface_color", text="Color", toggle=True) | row.prop(view_layer, "use_pass_subsurface_color", text="Color", toggle=True) | ||||
| col.label(text="Volume:") | col.label(text="Volume:") | ||||
| row = col.row(align=True) | row = col.row(align=True) | ||||
| row.prop(crl, "use_pass_volume_direct", text="Direct", toggle=True) | row.prop(cycles_view_layer, "use_pass_volume_direct", text="Direct", toggle=True) | ||||
| row.prop(crl, "use_pass_volume_indirect", text="Indirect", toggle=True) | row.prop(cycles_view_layer, "use_pass_volume_indirect", text="Indirect", toggle=True) | ||||
| col.separator() | col.separator() | ||||
| col.prop(rl, "use_pass_emit", text="Emission") | col.prop(view_layer, "use_pass_emit", text="Emission") | ||||
| col.prop(rl, "use_pass_environment") | col.prop(view_layer, "use_pass_environment") | ||||
| if context.scene.cycles.feature_set == 'EXPERIMENTAL': | if context.scene.cycles.feature_set == 'EXPERIMENTAL': | ||||
| col.separator() | col.separator() | ||||
| sub = col.column() | sub = col.column() | ||||
| sub.active = crl.use_denoising | sub.active = cycles_view_layer.use_denoising | ||||
| sub.prop(crl, "denoising_store_passes", text="Denoising") | sub.prop(cycles_view_layer, "denoising_store_passes", text="Denoising") | ||||
| col = layout.column() | col = layout.column() | ||||
| col.prop(crl, "pass_debug_render_time") | col.prop(cycles_view_layer, "pass_debug_render_time") | ||||
| if _cycles.with_cycles_debug: | if _cycles.with_cycles_debug: | ||||
| col.prop(crl, "pass_debug_bvh_traversed_nodes") | col.prop(cycles_view_layer, "pass_debug_bvh_traversed_nodes") | ||||
| col.prop(crl, "pass_debug_bvh_traversed_instances") | col.prop(cycles_view_layer, "pass_debug_bvh_traversed_instances") | ||||
| col.prop(crl, "pass_debug_bvh_intersections") | col.prop(cycles_view_layer, "pass_debug_bvh_intersections") | ||||
| col.prop(crl, "pass_debug_ray_bounces") | col.prop(cycles_view_layer, "pass_debug_ray_bounces") | ||||
| class CYCLES_RENDER_PT_views(CyclesButtonsPanel, Panel): | class CYCLES_RENDER_PT_views(CyclesButtonsPanel, Panel): | ||||
| bl_label = "Views" | bl_label = "Views" | ||||
| bl_context = "render_layer" | bl_context = "view_layer" | ||||
| bl_options = {'DEFAULT_CLOSED'} | bl_options = {'DEFAULT_CLOSED'} | ||||
| def draw_header(self, context): | def draw_header(self, context): | ||||
| rd = context.scene.render | rd = context.scene.render | ||||
| self.layout.prop(rd, "use_multiview", text="") | self.layout.prop(rd, "use_multiview", text="") | ||||
| def draw(self, context): | def draw(self, context): | ||||
| layout = self.layout | layout = self.layout | ||||
| scene = context.scene | scene = context.scene | ||||
| rd = scene.render | rd = scene.render | ||||
| rv = rd.views.active | rv = rd.views.active | ||||
| layout.active = rd.use_multiview | layout.active = rd.use_multiview | ||||
| basic_stereo = (rd.views_format == 'STEREO_3D') | basic_stereo = (rd.views_format == 'STEREO_3D') | ||||
| row = layout.row() | row = layout.row() | ||||
| row.prop(rd, "views_format", expand=True) | row.prop(rd, "views_format", expand=True) | ||||
| if basic_stereo: | if basic_stereo: | ||||
| row = layout.row() | row = layout.row() | ||||
| row.template_list("RENDERLAYER_UL_renderviews", "name", rd, "stereo_views", rd.views, "active_index", rows=2) | row.template_list("VIEWLAYER_UL_renderviews", "name", rd, "stereo_views", rd.views, "active_index", rows=2) | ||||
| row = layout.row() | row = layout.row() | ||||
| row.label(text="File Suffix:") | row.label(text="File Suffix:") | ||||
| row.prop(rv, "file_suffix", text="") | row.prop(rv, "file_suffix", text="") | ||||
| else: | else: | ||||
| row = layout.row() | row = layout.row() | ||||
| row.template_list("RENDERLAYER_UL_renderviews", "name", rd, "views", rd.views, "active_index", rows=2) | row.template_list("VIEWLAYER_UL_renderviews", "name", rd, "views", rd.views, "active_index", rows=2) | ||||
| col = row.column(align=True) | col = row.column(align=True) | ||||
| col.operator("scene.render_view_add", icon='ZOOMIN', text="") | col.operator("scene.render_view_add", icon='ZOOMIN', text="") | ||||
| col.operator("scene.render_view_remove", icon='ZOOMOUT', text="") | col.operator("scene.render_view_remove", icon='ZOOMOUT', text="") | ||||
| row = layout.row() | row = layout.row() | ||||
| row.label(text="Camera Suffix:") | row.label(text="Camera Suffix:") | ||||
| row.prop(rv, "camera_suffix", text="") | row.prop(rv, "camera_suffix", text="") | ||||
| class CYCLES_RENDER_PT_denoising(CyclesButtonsPanel, Panel): | class CYCLES_RENDER_PT_denoising(CyclesButtonsPanel, Panel): | ||||
| bl_label = "Denoising" | bl_label = "Denoising" | ||||
| bl_context = "render_layer" | bl_context = "view_layer" | ||||
| bl_options = {'DEFAULT_CLOSED'} | bl_options = {'DEFAULT_CLOSED'} | ||||
| def draw_header(self, context): | def draw_header(self, context): | ||||
| scene = context.scene | scene = context.scene | ||||
| rl = scene.render_layers.active | view_layer = scene.view_layers.active | ||||
| crl = rl.cycles | cycles_view_layer = view_layer.cycles | ||||
| cscene = scene.cycles | cscene = scene.cycles | ||||
| layout = self.layout | layout = self.layout | ||||
| layout.prop(crl, "use_denoising", text="") | layout.prop(cycles_view_layer, "use_denoising", text="") | ||||
| def draw(self, context): | def draw(self, context): | ||||
| layout = self.layout | layout = self.layout | ||||
| scene = context.scene | scene = context.scene | ||||
| cscene = scene.cycles | cscene = scene.cycles | ||||
| rl = scene.render_layers.active | view_layer = scene.view_layers.active | ||||
| crl = rl.cycles | cycles_view_layer = view_layer.cycles | ||||
| layout.active = crl.use_denoising | layout.active = cycles_view_layer.use_denoising | ||||
| split = layout.split() | split = layout.split() | ||||
| col = split.column() | col = split.column() | ||||
| sub = col.column(align=True) | sub = col.column(align=True) | ||||
| sub.prop(crl, "denoising_radius", text="Radius") | sub.prop(cycles_view_layer, "denoising_radius", text="Radius") | ||||
| sub.prop(crl, "denoising_strength", slider=True, text="Strength") | sub.prop(cycles_view_layer, "denoising_strength", slider=True, text="Strength") | ||||
| col = split.column() | col = split.column() | ||||
| sub = col.column(align=True) | sub = col.column(align=True) | ||||
| sub.prop(crl, "denoising_feature_strength", slider=True, text="Feature Strength") | sub.prop(cycles_view_layer, "denoising_feature_strength", slider=True, text="Feature Strength") | ||||
| sub.prop(crl, "denoising_relative_pca") | sub.prop(cycles_view_layer, "denoising_relative_pca") | ||||
| layout.separator() | layout.separator() | ||||
| row = layout.row() | row = layout.row() | ||||
| row.label(text="Diffuse:") | row.label(text="Diffuse:") | ||||
| sub = row.row(align=True) | sub = row.row(align=True) | ||||
| sub.prop(crl, "denoising_diffuse_direct", text="Direct", toggle=True) | sub.prop(cycles_view_layer, "denoising_diffuse_direct", text="Direct", toggle=True) | ||||
| sub.prop(crl, "denoising_diffuse_indirect", text="Indirect", toggle=True) | sub.prop(cycles_view_layer, "denoising_diffuse_indirect", text="Indirect", toggle=True) | ||||
| row = layout.row() | row = layout.row() | ||||
| row.label(text="Glossy:") | row.label(text="Glossy:") | ||||
| sub = row.row(align=True) | sub = row.row(align=True) | ||||
| sub.prop(crl, "denoising_glossy_direct", text="Direct", toggle=True) | sub.prop(cycles_view_layer, "denoising_glossy_direct", text="Direct", toggle=True) | ||||
| sub.prop(crl, "denoising_glossy_indirect", text="Indirect", toggle=True) | sub.prop(cycles_view_layer, "denoising_glossy_indirect", text="Indirect", toggle=True) | ||||
| row = layout.row() | row = layout.row() | ||||
| row.label(text="Transmission:") | row.label(text="Transmission:") | ||||
| sub = row.row(align=True) | sub = row.row(align=True) | ||||
| sub.prop(crl, "denoising_transmission_direct", text="Direct", toggle=True) | sub.prop(cycles_view_layer, "denoising_transmission_direct", text="Direct", toggle=True) | ||||
| sub.prop(crl, "denoising_transmission_indirect", text="Indirect", toggle=True) | sub.prop(cycles_view_layer, "denoising_transmission_indirect", text="Indirect", toggle=True) | ||||
| row = layout.row() | row = layout.row() | ||||
| row.label(text="Subsurface:") | row.label(text="Subsurface:") | ||||
| sub = row.row(align=True) | sub = row.row(align=True) | ||||
| sub.prop(crl, "denoising_subsurface_direct", text="Direct", toggle=True) | sub.prop(cycles_view_layer, "denoising_subsurface_direct", text="Direct", toggle=True) | ||||
| sub.prop(crl, "denoising_subsurface_indirect", text="Indirect", toggle=True) | sub.prop(cycles_view_layer, "denoising_subsurface_indirect", text="Indirect", toggle=True) | ||||
| class CYCLES_PT_post_processing(CyclesButtonsPanel, Panel): | class CYCLES_PT_post_processing(CyclesButtonsPanel, Panel): | ||||
| bl_label = "Post Processing" | bl_label = "Post Processing" | ||||
| bl_options = {'DEFAULT_CLOSED'} | bl_options = {'DEFAULT_CLOSED'} | ||||
| def draw(self, context): | def draw(self, context): | ||||
| layout = self.layout | layout = self.layout | ||||
| ▲ Show 20 Lines • Show All 446 Lines • ▼ Show 20 Lines | class CYCLES_WORLD_PT_mist(CyclesButtonsPanel, Panel): | ||||
| bl_label = "Mist Pass" | bl_label = "Mist Pass" | ||||
| bl_context = "world" | bl_context = "world" | ||||
| bl_options = {'DEFAULT_CLOSED'} | bl_options = {'DEFAULT_CLOSED'} | ||||
| @classmethod | @classmethod | ||||
| def poll(cls, context): | def poll(cls, context): | ||||
| if CyclesButtonsPanel.poll(context): | if CyclesButtonsPanel.poll(context): | ||||
| if context.world: | if context.world: | ||||
| for rl in context.scene.render_layers: | for view_layer in context.scene.view_layers: | ||||
| if rl.use_pass_mist: | if view_layer.use_pass_mist: | ||||
| return True | return True | ||||
| return False | return False | ||||
| def draw(self, context): | def draw(self, context): | ||||
| layout = self.layout | layout = self.layout | ||||
| world = context.world | world = context.world | ||||
| ▲ Show 20 Lines • Show All 621 Lines • ▼ Show 20 Lines | exclude_panels = { | ||||
| 'MATERIAL_PT_strand', | 'MATERIAL_PT_strand', | ||||
| 'MATERIAL_PT_transp', | 'MATERIAL_PT_transp', | ||||
| 'MATERIAL_PT_volume_density', | 'MATERIAL_PT_volume_density', | ||||
| 'MATERIAL_PT_volume_integration', | 'MATERIAL_PT_volume_integration', | ||||
| 'MATERIAL_PT_volume_lighting', | 'MATERIAL_PT_volume_lighting', | ||||
| 'MATERIAL_PT_volume_options', | 'MATERIAL_PT_volume_options', | ||||
| 'MATERIAL_PT_volume_shading', | 'MATERIAL_PT_volume_shading', | ||||
| 'MATERIAL_PT_volume_transp', | 'MATERIAL_PT_volume_transp', | ||||
| 'RENDERLAYER_PT_layer_options', | 'VIEWLAYER_PT_layer_options', | ||||
| 'RENDERLAYER_PT_layer_passes', | 'VIEWLAYER_PT_layer_passes', | ||||
| 'RENDERLAYER_PT_views', | 'VIEWLAYER_PT_views', | ||||
| 'RENDER_PT_antialiasing', | 'RENDER_PT_antialiasing', | ||||
| 'RENDER_PT_bake', | 'RENDER_PT_bake', | ||||
| 'RENDER_PT_motion_blur', | 'RENDER_PT_motion_blur', | ||||
| 'RENDER_PT_performance', | 'RENDER_PT_performance', | ||||
| 'RENDER_PT_post_processing', | 'RENDER_PT_post_processing', | ||||
| 'RENDER_PT_shading', | 'RENDER_PT_shading', | ||||
| 'SCENE_PT_simplify', | 'SCENE_PT_simplify', | ||||
| 'TEXTURE_PT_context_texture', | 'TEXTURE_PT_context_texture', | ||||
| ▲ Show 20 Lines • Show All 90 Lines • Show Last 20 Lines | |||||