Fix Cycles world light group confusing UI
Move to a subpanel of the Settings panel. Otherwise it seems like it's a setting of one of the shader nodes.
This commit is contained in:
@@ -1446,28 +1446,10 @@ class CYCLES_WORLD_PT_surface(CyclesButtonsPanel, Panel):
|
|||||||
layout.use_property_split = True
|
layout.use_property_split = True
|
||||||
|
|
||||||
world = context.world
|
world = context.world
|
||||||
view_layer = context.view_layer
|
|
||||||
|
|
||||||
if not panel_node_draw(layout, world, 'OUTPUT_WORLD', 'Surface'):
|
if not panel_node_draw(layout, world, 'OUTPUT_WORLD', 'Surface'):
|
||||||
layout.prop(world, "color")
|
layout.prop(world, "color")
|
||||||
|
|
||||||
row = layout.row(align=True)
|
|
||||||
row.use_property_decorate = False
|
|
||||||
|
|
||||||
sub = row.column(align=True)
|
|
||||||
sub.prop_search(
|
|
||||||
world,
|
|
||||||
"lightgroup",
|
|
||||||
view_layer,
|
|
||||||
"lightgroups",
|
|
||||||
text="Light Group",
|
|
||||||
results_are_suggestions=True,
|
|
||||||
)
|
|
||||||
|
|
||||||
sub = row.column(align=True)
|
|
||||||
sub.active = bool(world.lightgroup) and not any(lg.name == world.lightgroup for lg in view_layer.lightgroups)
|
|
||||||
sub.operator("scene.view_layer_add_lightgroup", icon='ADD', text="").name = world.lightgroup
|
|
||||||
|
|
||||||
|
|
||||||
class CYCLES_WORLD_PT_volume(CyclesButtonsPanel, Panel):
|
class CYCLES_WORLD_PT_volume(CyclesButtonsPanel, Panel):
|
||||||
bl_label = "Volume"
|
bl_label = "Volume"
|
||||||
@@ -1616,6 +1598,40 @@ class CYCLES_WORLD_PT_settings_volume(CyclesButtonsPanel, Panel):
|
|||||||
sub.prop(cworld, "volume_step_size")
|
sub.prop(cworld, "volume_step_size")
|
||||||
|
|
||||||
|
|
||||||
|
class CYCLES_WORLD_PT_settings_light_group(CyclesButtonsPanel, Panel):
|
||||||
|
bl_label = "Light Group"
|
||||||
|
bl_parent_id = "CYCLES_WORLD_PT_settings"
|
||||||
|
bl_context = "world"
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def poll(cls, context):
|
||||||
|
return context.world and CyclesButtonsPanel.poll(context)
|
||||||
|
|
||||||
|
def draw(self, context):
|
||||||
|
layout = self.layout
|
||||||
|
layout.use_property_split = True
|
||||||
|
layout.use_property_decorate = False
|
||||||
|
|
||||||
|
world = context.world
|
||||||
|
view_layer = context.view_layer
|
||||||
|
|
||||||
|
row = layout.row(align=True)
|
||||||
|
|
||||||
|
sub = row.column(align=True)
|
||||||
|
sub.prop_search(
|
||||||
|
world,
|
||||||
|
"lightgroup",
|
||||||
|
view_layer,
|
||||||
|
"lightgroups",
|
||||||
|
text="Light Group",
|
||||||
|
results_are_suggestions=True,
|
||||||
|
)
|
||||||
|
|
||||||
|
sub = row.column(align=True)
|
||||||
|
sub.active = bool(world.lightgroup) and not any(lg.name == world.lightgroup for lg in view_layer.lightgroups)
|
||||||
|
sub.operator("scene.view_layer_add_lightgroup", icon='ADD', text="").name = world.lightgroup
|
||||||
|
|
||||||
|
|
||||||
class CYCLES_MATERIAL_PT_preview(CyclesButtonsPanel, Panel):
|
class CYCLES_MATERIAL_PT_preview(CyclesButtonsPanel, Panel):
|
||||||
bl_label = "Preview"
|
bl_label = "Preview"
|
||||||
bl_context = "material"
|
bl_context = "material"
|
||||||
@@ -2308,6 +2324,7 @@ classes = (
|
|||||||
CYCLES_WORLD_PT_settings,
|
CYCLES_WORLD_PT_settings,
|
||||||
CYCLES_WORLD_PT_settings_surface,
|
CYCLES_WORLD_PT_settings_surface,
|
||||||
CYCLES_WORLD_PT_settings_volume,
|
CYCLES_WORLD_PT_settings_volume,
|
||||||
|
CYCLES_WORLD_PT_settings_light_group,
|
||||||
CYCLES_MATERIAL_PT_preview,
|
CYCLES_MATERIAL_PT_preview,
|
||||||
CYCLES_MATERIAL_PT_surface,
|
CYCLES_MATERIAL_PT_surface,
|
||||||
CYCLES_MATERIAL_PT_volume,
|
CYCLES_MATERIAL_PT_volume,
|
||||||
|
Reference in New Issue
Block a user