[Bf-blender-cvs] [7cf46056ac6] soc-2019-npr: LANPR: Fix background color.

YimingWu noreply at git.blender.org
Fri Aug 9 04:39:39 CEST 2019


Commit: 7cf46056ac6defcc10a981410d26a4e77b97a2c6
Author: YimingWu
Date:   Fri Aug 9 10:36:49 2019 +0800
Branches: soc-2019-npr
https://developer.blender.org/rB7cf46056ac6defcc10a981410d26a4e77b97a2c6

LANPR: Fix background color.

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

M	release/scripts/startup/bl_ui/properties_render.py
M	source/blender/blenkernel/intern/scene.c
M	source/blender/blenloader/intern/versioning_280.c
M	source/blender/draw/engines/lanpr/lanpr_cpu.c
M	source/blender/draw/engines/lanpr/lanpr_dpix.c
M	source/blender/draw/engines/lanpr/lanpr_engine.c
M	source/blender/draw/engines/lanpr/lanpr_snake.c
M	source/blender/makesdna/DNA_scene_types.h
M	source/blender/makesrna/intern/rna_scene.c

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

diff --git a/release/scripts/startup/bl_ui/properties_render.py b/release/scripts/startup/bl_ui/properties_render.py
index b3ac16e08d5..afe181764fb 100644
--- a/release/scripts/startup/bl_ui/properties_render.py
+++ b/release/scripts/startup/bl_ui/properties_render.py
@@ -466,7 +466,7 @@ class RENDER_PT_eevee_indirect_lighting_display(RenderButtonsPanel, Panel):
 class RENDER_PT_eevee_film(RenderButtonsPanel, Panel):
     bl_label = "Film"
     bl_options = {'DEFAULT_CLOSED'}
-    COMPAT_ENGINES = {'BLENDER_EEVEE'}
+    COMPAT_ENGINES = {'BLENDER_EEVEE', 'BLENDER_LANPR'}
 
     @classmethod
     def poll(cls, context):
@@ -746,17 +746,7 @@ class RENDER_PT_lanpr(RenderButtonsPanel, Panel):
             if not lanpr.auto_update:
                 c.operator("scene.lanpr_calculate", icon='FILE_REFRESH', text=txt)
 
-            c.operator("scene.lanpr_export_svg", icon='OUTLINER_OB_CURVE', text="Generate SVG to a text block")
-
-        #deprecated
-        #layout.label(text="Background Color:")
-        #row = layout.row(align=True)
-        #row.prop(lanpr,"use_world_background",toggle=True,icon='WORLD',text="Use World")
-        #if(lanpr.use_world_background):
-        #    row.prop(scene.world, "color",text="")
-        #else:
-        #    row.prop(lanpr, "background_color",text="")
-        
+            c.operator("scene.lanpr_export_svg", icon='OUTLINER_OB_CURVE', text="Generate SVG to a text block")        
 
         if mode == "DPIX" and len(lanpr.layers)==0:
             layout.label(text="You don't have a layer to display.")
diff --git a/source/blender/blenkernel/intern/scene.c b/source/blender/blenkernel/intern/scene.c
index 01964b61c0d..3440c8dfb69 100644
--- a/source/blender/blenkernel/intern/scene.c
+++ b/source/blender/blenkernel/intern/scene.c
@@ -1026,11 +1026,6 @@ void BKE_scene_init(Scene *sce)
 
   sce->lanpr.enable_intersections = 1;
 
-  sce->lanpr.background_color[0] = 0;
-  sce->lanpr.background_color[1] = 0;
-  sce->lanpr.background_color[2] = 0;
-  sce->lanpr.background_color[3] = 1;
-
   sce->lanpr.line_color[0] = 1;
   sce->lanpr.line_color[1] = 1;
   sce->lanpr.line_color[2] = 1;
diff --git a/source/blender/blenloader/intern/versioning_280.c b/source/blender/blenloader/intern/versioning_280.c
index a169b2cc21b..cc52bb8f2fd 100644
--- a/source/blender/blenloader/intern/versioning_280.c
+++ b/source/blender/blenloader/intern/versioning_280.c
@@ -1804,11 +1804,6 @@ void blo_do_versions_280(FileData *fd, Library *UNUSED(lib), Main *bmain)
 
         scene->lanpr.enable_intersections = 1;
 
-        scene->lanpr.background_color[0] = 0.76;
-        scene->lanpr.background_color[1] = 0.54;
-        scene->lanpr.background_color[2] = 0.29;
-        scene->lanpr.background_color[3] = 1;
-
         scene->lanpr.line_color[0] = 0.39;
         scene->lanpr.line_color[1] = 0.12;
         scene->lanpr.line_color[2] = 0.04;
@@ -3529,12 +3524,6 @@ void blo_do_versions_280(FileData *fd, Library *UNUSED(lib), Main *bmain)
 
       sce->lanpr.enable_intersections = 1;
 
-      /* default world background color */
-      copy_v3_fl(sce->lanpr.background_color, 0.051);
-      sce->lanpr.background_color[3] = 1;
-
-      sce->lanpr.use_world_background = 1;
-
       zero_v4(sce->lanpr.line_color);
 
       sce->lanpr.enable_intersections = 1;
diff --git a/source/blender/draw/engines/lanpr/lanpr_cpu.c b/source/blender/draw/engines/lanpr/lanpr_cpu.c
index 5be7669cdda..804f45a62c9 100644
--- a/source/blender/draw/engines/lanpr/lanpr_cpu.c
+++ b/source/blender/draw/engines/lanpr/lanpr_cpu.c
@@ -218,13 +218,8 @@ void lanpr_software_draw_scene(void *vedata, GPUFrameBuffer *dfb, int is_render)
   eGPUFrameBufferBits clear_bits = GPU_DEPTH_BIT | GPU_COLOR_BIT;
   static int zero_value = 0;
 
-  if (lanpr->use_world_background) {
-    copy_v3_v3(use_background_color, &scene->world->horr);
-    use_background_color[3] = 1;
-  }
-  else {
-    copy_v4_v4(use_background_color, lanpr->background_color);
-  }
+  copy_v3_v3(use_background_color, &scene->world->horr);
+  use_background_color[3] = scene->r.alphamode?0.0f:1.0f;
 
   GPU_framebuffer_bind(fbl->software_ms);
   GPU_framebuffer_clear(
diff --git a/source/blender/draw/engines/lanpr/lanpr_dpix.c b/source/blender/draw/engines/lanpr/lanpr_dpix.c
index 69ac52fc1fb..c9401211840 100644
--- a/source/blender/draw/engines/lanpr/lanpr_dpix.c
+++ b/source/blender/draw/engines/lanpr/lanpr_dpix.c
@@ -499,13 +499,8 @@ void lanpr_dpix_draw_scene(LANPR_TextureList *txl,
   pd->dpix_znear = camera ? ((Camera *)camera->data)->clip_start : v3d->clip_start;
   pd->dpix_zfar = camera ? ((Camera *)camera->data)->clip_end : v3d->clip_end;
 
-  if (lanpr->use_world_background) {
-    copy_v3_v3(use_background_color, &scene->world->horr);
-    use_background_color[3] = 1;
-  }
-  else {
-    copy_v3_v3(use_background_color, lanpr->background_color);
-  }
+  copy_v3_v3(use_background_color, &scene->world->horr);
+  use_background_color[3] = scene->r.alphamode?0.0f:1.0f;
 
   GPU_point_size(1);
   /*  GPU_line_width(2); */
diff --git a/source/blender/draw/engines/lanpr/lanpr_engine.c b/source/blender/draw/engines/lanpr/lanpr_engine.c
index 0699c1c9879..02987f53904 100644
--- a/source/blender/draw/engines/lanpr/lanpr_engine.c
+++ b/source/blender/draw/engines/lanpr/lanpr_engine.c
@@ -335,11 +335,13 @@ static void lanpr_cache_init(void *vedata)
                              "intersection_color",
                              ll->use_same_style ? ll->color : ll->intersection.color,
                              1);
+    static float use_background_color[4];
+    copy_v3_v3(use_background_color, &scene->world->horr);
+    use_background_color[3] = scene->r.alphamode?0.0f:1.0f;
+
     DRW_shgroup_uniform_vec4(
-        stl->g_data->dpix_preview_shgrp, "background_color", lanpr->background_color, 1);
-    /*  DRW_shgroup_uniform_vec4(stl->g_data->dpix_preview_shgrp, "line_color", ll->line_color, 1);
-     */
-    /*  //we have color */
+        stl->g_data->dpix_preview_shgrp, "background_color", use_background_color, 1);
+
     DRW_shgroup_uniform_float(
         stl->g_data->dpix_preview_shgrp, "depth_offset", &stl->g_data->dpix_depth_offset, 1);
     DRW_shgroup_uniform_float(stl->g_data->dpix_preview_shgrp,
diff --git a/source/blender/draw/engines/lanpr/lanpr_snake.c b/source/blender/draw/engines/lanpr/lanpr_snake.c
index ab702f5e053..124c79f3ea5 100644
--- a/source/blender/draw/engines/lanpr/lanpr_snake.c
+++ b/source/blender/draw/engines/lanpr/lanpr_snake.c
@@ -546,14 +546,19 @@ void lanpr_snake_draw_scene(LANPR_TextureList *txl,
     }
   }
 
+  float use_background_color[4] = {0.0f, 0.0f, 0.0f, 1.0f};
+
+  copy_v3_v3(use_background_color, &scene->world->horr);
+  use_background_color[3] = scene->r.alphamode?0.0f:1.0f;
+
   GPU_framebuffer_bind(DefaultFB);
   GPU_framebuffer_clear(
-      DefaultFB, clear_bits, lanpr->background_color, clear_depth, clear_stencil);
+      DefaultFB, clear_bits, use_background_color, clear_depth, clear_stencil);
 
   GPU_framebuffer_bind(fbl->edge_intermediate);
   clear_bits = GPU_COLOR_BIT;
   GPU_framebuffer_clear(
-      fbl->edge_intermediate, clear_bits, lanpr->background_color, clear_depth, clear_stencil);
+      fbl->edge_intermediate, clear_bits, use_background_color, clear_depth, clear_stencil);
 
   float *tld = &lanpr->taper_left_distance, *tls = &lanpr->taper_left_strength,
         *trd = &lanpr->taper_right_distance, *trs = &lanpr->taper_right_strength;
diff --git a/source/blender/makesdna/DNA_scene_types.h b/source/blender/makesdna/DNA_scene_types.h
index 378a5f454f1..a6544a7f950 100644
--- a/source/blender/makesdna/DNA_scene_types.h
+++ b/source/blender/makesdna/DNA_scene_types.h
@@ -1680,8 +1680,7 @@ typedef struct SceneLANPR {
   float crease_fade_threshold; /* for dpix crease fading */
 
   float line_color[4];
-  float background_color[4];
-  int use_world_background; /* color only */
+  int _pad1;
 
   float depth_width_influence;
   float depth_width_curve;
diff --git a/source/blender/makesrna/intern/rna_scene.c b/source/blender/makesrna/intern/rna_scene.c
index 40f9d5c7285..3c19c21679b 100644
--- a/source/blender/makesrna/intern/rna_scene.c
+++ b/source/blender/makesrna/intern/rna_scene.c
@@ -7352,19 +7352,6 @@ static void rna_def_scene_lanpr(BlenderRNA *brna)
   RNA_def_property_flag(prop, PROP_EDITABLE);
   RNA_def_property_update(prop, NC_SCENE, NULL);
 
-  prop = RNA_def_property(srna, "background_color", PROP_FLOAT, PROP_COLOR);
-  RNA_def_property_float_default(prop, 1.0f);
-  RNA_def_property_array(prop, 4);
-  RNA_def_property_ui_text(prop, "Background Color", "Background Color");
-  RNA_def_property_ui_range(prop, 0.0f, 1.0f, 0.1, 2);
-  RNA_def_property_flag(prop, PROP_EDITABLE);
-  RNA_def_property_update(prop, NC_SCENE, NULL);
-
-  prop = RNA_def_property(srna, "use_world_background", PROP_BOOLEAN, PROP_NONE);
-  RNA_def_property_boolean_default(prop, 1);
-  RNA_def_property_ui_text(
-      prop, "Use World Background", "Use the background color set in the world panels");
-
   prop = RNA_def_property(srna, "crease_threshold", PROP_FLOAT, PROP_NONE);
   RNA_def_property_float_default(prop, 0.5f);
   RNA_def_property_ui_text(prop, "Crease Threshold", "cosine value of face angle");



More information about the Bf-blender-cvs mailing list