[Bf-blender-cvs] [86fa2251640] soc-2019-npr: LANPR: UI refactor: effects panel.

YimingWu noreply at git.blender.org
Wed Jul 24 09:45:12 CEST 2019


Commit: 86fa225164070a32494a131971baa83930e8a0ac
Author: YimingWu
Date:   Wed Jul 24 15:44:46 2019 +0800
Branches: soc-2019-npr
https://developer.blender.org/rB86fa225164070a32494a131971baa83930e8a0ac

LANPR: UI refactor: effects panel.

===================================================================

M	release/scripts/startup/bl_ui/properties_render.py

===================================================================

diff --git a/release/scripts/startup/bl_ui/properties_render.py b/release/scripts/startup/bl_ui/properties_render.py
index 401a2ae082e..1a565bfa2d0 100644
--- a/release/scripts/startup/bl_ui/properties_render.py
+++ b/release/scripts/startup/bl_ui/properties_render.py
@@ -747,7 +747,6 @@ class RENDER_PT_lanpr(RenderButtonsPanel, Panel):
 
         if scene.render.engine=="BLENDER_LANPR":
             col.prop(lanpr, "master_mode") 
-
         elif mode != "SOFTWARE":
             mode = "SOFTWARE"
 
@@ -936,8 +935,8 @@ class RENDER_PT_lanpr_line_components(RenderButtonsPanel, Panel):
             i=i+1
 
 
-class RENDER_PT_lanpr_line_effects(RenderButtonsPanel, Panel):
-    bl_label = "Effects"
+class RENDER_PT_lanpr_line_normal_effects(RenderButtonsPanel, Panel):
+    bl_label = "Normal Based Line Weight"
     bl_parent_id = "RENDER_PT_lanpr"
     bl_options = {'DEFAULT_CLOSED'}
     COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_LANPR', 'BLENDER_OPENGL', 'BLENDER_EEVEE'}
@@ -947,35 +946,64 @@ class RENDER_PT_lanpr_line_effects(RenderButtonsPanel, Panel):
         scene = context.scene
         lanpr = scene.lanpr
         active_layer = lanpr.layers.active_layer
-        return scene.render.engine=="BLENDER_LANPR" and active_layer
+        return scene.render.engine=="BLENDER_LANPR" and active_layer and lanpr.master_mode == "SOFTWARE"
+
+    # sub panel doesn't support this?
+    #def draw_header(self, context):
+        #active_layer = lanpr.layers.active_layer
+        #self.layout.prop(context.scene.lanpr, "enabled", text="")
 
     def draw(self, context):
-        layout = self.layout
         scene = context.scene
         lanpr = scene.lanpr
         active_layer = lanpr.layers.active_layer
+
+        layout = self.layout
+        layout.use_property_split = True
+        layout.use_property_decorate = False
         
-        if lanpr.master_mode == "DPIX":
-            row = layout.row(align = True)
-            row.prop(lanpr, "crease_threshold")
-            row.prop(lanpr, "crease_fade_threshold")
-            row = layout.row(align = True)
-            row.prop(lanpr, "depth_width_influence")
-            row.prop(lanpr, "depth_width_curve")
-            row = layout.row(align = True)
-            row.prop(lanpr, "depth_alpha_influence")
-            row.prop(lanpr, "depth_alpha_curve")
-        elif lanpr.master_mode == "SOFTWARE":
-            if active_layer:
-                layout.label(text= "Normal based line weight:")
-                layout.prop(active_layer,"normal_mode", expand = True)
-                if active_layer.normal_mode != "DISABLED":
-                    layout.prop(active_layer,"normal_control_object")
-                    layout.prop(active_layer,"normal_effect_inverse", toggle = True)
-                    layout.prop(active_layer,"normal_ramp_begin")
-                    layout.prop(active_layer,"normal_ramp_end")
-                    layout.prop(active_layer,"normal_thickness_begin", slider=True)
-                    layout.prop(active_layer,"normal_thickness_end", slider=True)
+        if active_layer:
+            layout.prop(active_layer,"normal_mode", text="Mode")
+            layout.prop(active_layer,"normal_control_object")
+            layout.prop(active_layer,"normal_effect_inverse")
+            col = layout.column(align=True)
+            col.prop(active_layer,"normal_ramp_begin")
+            col.prop(active_layer,"normal_ramp_end")
+            col = layout.column(align=True)
+            col.prop(active_layer,"normal_thickness_begin", slider=True)
+            col.prop(active_layer,"normal_thickness_end", slider=True)
+
+class RENDER_PT_lanpr_line_gpu_effects(RenderButtonsPanel, Panel):
+    bl_label = "Effects"
+    bl_parent_id = "RENDER_PT_lanpr"
+    bl_options = {'DEFAULT_CLOSED'}
+    COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_LANPR', 'BLENDER_OPENGL', 'BLENDER_EEVEE'}
+
+    @classmethod
+    def poll(cls, context):
+        scene = context.scene
+        lanpr = scene.lanpr
+        active_layer = lanpr.layers.active_layer
+        return scene.render.engine=="BLENDER_LANPR" and active_layer and lanpr.master_mode == "DPIX"
+
+    def draw(self, context):
+        scene = context.scene
+        lanpr = scene.lanpr
+        active_layer = lanpr.layers.active_layer
+
+        layout = self.layout
+        layout.use_property_split = True
+        layout.use_property_decorate = False
+
+        col = layout.column(align = True)
+        col.prop(lanpr, "crease_threshold")
+        col.prop(lanpr, "crease_fade_threshold")
+        col = layout.column(align = True)
+        col.prop(lanpr, "depth_width_influence")
+        col.prop(lanpr, "depth_width_curve")
+        col = layout.column(align = True)
+        col.prop(lanpr, "depth_alpha_influence")
+        col.prop(lanpr, "depth_alpha_curve")
 
 
 class RENDER_PT_lanpr_snake_sobel_parameters(RenderButtonsPanel, Panel):
@@ -1132,7 +1160,8 @@ classes = (
     RENDER_PT_lanpr,
     RENDER_PT_lanpr_layer_settings,
     RENDER_PT_lanpr_line_components,
-    RENDER_PT_lanpr_line_effects,
+    RENDER_PT_lanpr_line_normal_effects,
+    RENDER_PT_lanpr_line_gpu_effects,
     RENDER_PT_lanpr_snake_sobel_parameters,
     RENDER_PT_lanpr_snake_settings,
     RENDER_PT_lanpr_software_chain_styles,



More information about the Bf-blender-cvs mailing list