[Bf-blender-cvs] [3ea92772059] soc-2018-npr: removed line styles from SceneLANPR

Nick Wu noreply at git.blender.org
Sun Jul 1 03:58:48 CEST 2018


Commit: 3ea92772059980627ed820c58502a3b84b1f4cb7
Author: Nick Wu
Date:   Fri Jun 29 14:18:11 2018 +0800
Branches: soc-2018-npr
https://developer.blender.org/rB3ea92772059980627ed820c58502a3b84b1f4cb7

removed line styles from SceneLANPR

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

M	release/scripts/startup/bl_ui/properties_scene.py
M	source/blender/draw/engines/lanpr/lanpr_dpix.c
M	source/blender/draw/engines/lanpr/lanpr_engine.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_scene.py b/release/scripts/startup/bl_ui/properties_scene.py
index 14fbae0ccf4..1eafc10823a 100644
--- a/release/scripts/startup/bl_ui/properties_scene.py
+++ b/release/scripts/startup/bl_ui/properties_scene.py
@@ -529,29 +529,23 @@ class SCENE_PT_lanpr(SceneButtonsPanel, PropertyPanel, Panel):
         if lanpr.master_mode == "DPIX" or lanpr.master_mode == "SOFTWARE":
             layout.label(text="DPIX:")
             layout.prop(lanpr, "reloaded")
-            layout.label(text="Effect Settings:")
-            
-            split = layout.split()
-            col = split.column()
-            col.prop(lanpr, "background_color")
-            col = split.column()
-            col.prop(lanpr, "line_color")
 
-            layout.label(text="Layer Composition:")
-            row = layout.row()
+            
             rows = 4
-            layout.template_list("LANPR_linesets", "", lanpr, "layers", lanpr.layers, "active_layer_index", rows=rows)
-            if active_layer:
-                split = layout.split()
-                col = split.column()
-                col.operator("scene.lanpr_add_line_layer")
-                col = split.column()
-                col.operator("scene.lanpr_rebuild_all_commands")
-            else:
-                layout.operator("scene.lanpr_add_line_layer")
-
             if lanpr.master_mode == "SOFTWARE":
-                layout.operator("scene.lanpr_calculate")
+                layout.operator("scene.lanpr_calculate", icon='RENDER_STILL')
+                layout.label(text="Layer Composition:")
+                layout.template_list("LANPR_linesets", "", lanpr, "layers", lanpr.layers, "active_layer_index", rows=rows)
+                if active_layer:
+                    split = layout.split()
+                    col = split.column()
+                    col.operator("scene.lanpr_add_line_layer")
+                    col = split.column()
+                    col.operator("scene.lanpr_rebuild_all_commands")
+                else:
+                    layout.operator("scene.lanpr_add_line_layer")
+            elif not lanpr.layers.active_layer:
+                layout.operator("scene.lanpr_add_line_layer")
             
             if active_layer:
 
diff --git a/source/blender/draw/engines/lanpr/lanpr_dpix.c b/source/blender/draw/engines/lanpr/lanpr_dpix.c
index 10a3fd20486..794f12bc96a 100644
--- a/source/blender/draw/engines/lanpr/lanpr_dpix.c
+++ b/source/blender/draw/engines/lanpr/lanpr_dpix.c
@@ -273,6 +273,8 @@ void lanpr_dpix_draw_scene(LANPR_TextureList *txl, LANPR_FramebufferList *fbl, L
 	float clear_depth = 1.0f;
 	uint clear_stencil = 0xFF;
 
+	if (!lanpr->active_layer) return; /* return early in case we don't have line layers. DPIX only use the first layer. */
+
 	int texw = GPU_texture_width(txl->edge_intermediate), texh = GPU_texture_height(txl->edge_intermediate);;
 	int tsize = texw * texh;
 
diff --git a/source/blender/draw/engines/lanpr/lanpr_engine.c b/source/blender/draw/engines/lanpr/lanpr_engine.c
index ab5f9686535..24daeec608f 100644
--- a/source/blender/draw/engines/lanpr/lanpr_engine.c
+++ b/source/blender/draw/engines/lanpr/lanpr_engine.c
@@ -66,25 +66,25 @@ static void lanpr_engine_init(void *ved){
 	}
 
 	if (!OneTime.InitComplete) {
-		lanpr->depth_clamp = 0.01;
-		lanpr->depth_strength = 800;
-		lanpr->normal_clamp = 2;
-		lanpr->normal_strength = 10;
-		lanpr->line_thickness = 2;
-		lanpr->taper_left_distance = 20;
-		lanpr->taper_left_strength = 0.9;
-		lanpr->taper_right_distance = 20;
-		lanpr->taper_right_strength = 0.9;
-
-		lanpr->line_color[0] = 0.22;
-		lanpr->line_color[1] = 0.29;
-		lanpr->line_color[2] = 0.53;
-		lanpr->line_color[3] = 1;
-
-		lanpr->background_color[0] = 0.59;
-		lanpr->background_color[1] = 0.90;
-		lanpr->background_color[2] = 0.51;
-		lanpr->background_color[3] = 1;
+		//lanpr->depth_clamp = 0.01;
+		//lanpr->depth_strength = 800;
+		//lanpr->normal_clamp = 2;
+		//lanpr->normal_strength = 10;
+		//lanpr->line_thickness = 2;
+		//lanpr->taper_left_distance = 20;
+		//lanpr->taper_left_strength = 0.9;
+		//lanpr->taper_right_distance = 20;
+		//lanpr->taper_right_strength = 0.9;
+
+		//lanpr->line_color[0] = 0.22;
+		//lanpr->line_color[1] = 0.29;
+		//lanpr->line_color[2] = 0.53;
+		//lanpr->line_color[3] = 1;
+
+		//lanpr->background_color[0] = 0.59;
+		//lanpr->background_color[1] = 0.90;
+		//lanpr->background_color[2] = 0.51;
+		//lanpr->background_color[3] = 1;
 
 		lanpr->reloaded = 1;
 
@@ -278,7 +278,8 @@ static void lanpr_cache_init(void *vedata){
 		DRW_shgroup_call_add(stl->g_data->edge_thinning_shgrp, quad, NULL);
 
 	}
-	elif (lanpr->master_mode == LANPR_MASTER_MODE_SNAKE) {
+	elif (lanpr->master_mode == LANPR_MASTER_MODE_SNAKE && lanpr->active_layer) {
+		LANPR_LineLayer* ll = lanpr->active_layer;
 		psl->dpix_transform_pass = DRW_pass_create("DPIX Transform Stage", DRW_STATE_WRITE_COLOR);
 		stl->g_data->dpix_transform_shgrp = DRW_shgroup_create(OneTime.dpix_transform_shader, psl->dpix_transform_pass);
 		DRW_shgroup_uniform_texture_ref(stl->g_data->dpix_transform_shgrp, "vert0_tex", &txl->dpix_in_pl);
@@ -292,9 +293,9 @@ static void lanpr_cache_init(void *vedata){
 		DRW_shgroup_uniform_int(stl->g_data->dpix_transform_shgrp, "buffer_width", &stl->g_data->dpix_buffer_width, 1);
 		DRW_shgroup_uniform_float(stl->g_data->dpix_transform_shgrp, "crease_threshold", &lanpr->crease_threshold, 1);
 		DRW_shgroup_uniform_float(stl->g_data->dpix_transform_shgrp, "crease_fade_threshold", &lanpr->crease_fade_threshold, 1);
-		DRW_shgroup_uniform_int(stl->g_data->dpix_transform_shgrp, "enable_crease", &lanpr->enable_crease, 1);
-		DRW_shgroup_uniform_int(stl->g_data->dpix_transform_shgrp, "enable_material", &lanpr->enable_material_seperate, 1);
-		DRW_shgroup_uniform_int(stl->g_data->dpix_transform_shgrp, "enable_edge_mark", &lanpr->enable_edge_mark, 1);
+		DRW_shgroup_uniform_int(stl->g_data->dpix_transform_shgrp, "enable_crease", &ll->enable_crease, 1);
+		DRW_shgroup_uniform_int(stl->g_data->dpix_transform_shgrp, "enable_material", &ll->enable_material_seperate, 1);
+		DRW_shgroup_uniform_int(stl->g_data->dpix_transform_shgrp, "enable_edge_mark", &ll->enable_edge_mark, 1);
 
 		psl->dpix_preview_pass = DRW_pass_create("DPIX Preview", DRW_STATE_WRITE_COLOR | DRW_STATE_WRITE_DEPTH | DRW_STATE_DEPTH_LESS_EQUAL);
 		stl->g_data->dpix_preview_shgrp = DRW_shgroup_create(OneTime.dpix_preview_shader, psl->dpix_preview_pass);
@@ -302,21 +303,21 @@ static void lanpr_cache_init(void *vedata){
 		DRW_shgroup_uniform_texture_ref(stl->g_data->dpix_preview_shgrp, "vert1_tex", &txl->dpix_out_pr);
 		DRW_shgroup_uniform_texture_ref(stl->g_data->dpix_preview_shgrp, "edge_mask_tex", &txl->dpix_in_edge_mask);
 		DRW_shgroup_uniform_vec4(stl->g_data->dpix_preview_shgrp, "viewport", stl->g_data->dpix_viewport, 1);
-		DRW_shgroup_uniform_vec4(stl->g_data->dpix_preview_shgrp, "color", lanpr->line_color, 1);
-		DRW_shgroup_uniform_vec4(stl->g_data->dpix_preview_shgrp, "crease_color", lanpr->crease_color, 1);
-		DRW_shgroup_uniform_vec4(stl->g_data->dpix_preview_shgrp, "material_color", lanpr->material_color, 1);
-		DRW_shgroup_uniform_vec4(stl->g_data->dpix_preview_shgrp, "edge_mark_color", lanpr->edge_mark_color, 1);
+		DRW_shgroup_uniform_vec4(stl->g_data->dpix_preview_shgrp, "color", ll->color, 1);
+		DRW_shgroup_uniform_vec4(stl->g_data->dpix_preview_shgrp, "crease_color", ll->crease_color, 1);
+		DRW_shgroup_uniform_vec4(stl->g_data->dpix_preview_shgrp, "material_color", ll->material_color, 1);
+		DRW_shgroup_uniform_vec4(stl->g_data->dpix_preview_shgrp, "edge_mark_color", ll->edge_mark_color, 1);
 		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, "background_color", lanpr->line_color, 1);
+		//DRW_shgroup_uniform_vec4(stl->g_data->dpix_preview_shgrp, "line_color", ll->line_color, 1); //we have color
 		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, "depth_width_influence", &lanpr->depth_width_influence, 1);
 		DRW_shgroup_uniform_float(stl->g_data->dpix_preview_shgrp, "depth_width_curve", &lanpr->depth_width_curve, 1);
 		DRW_shgroup_uniform_float(stl->g_data->dpix_preview_shgrp, "depth_alpha_influence", &lanpr->depth_alpha_influence, 1);
 		DRW_shgroup_uniform_float(stl->g_data->dpix_preview_shgrp, "depth_alpha_curve", &lanpr->depth_alpha_curve, 1);
-		DRW_shgroup_uniform_float(stl->g_data->dpix_preview_shgrp, "line_thickness", &lanpr->line_thickness, 1);
-		DRW_shgroup_uniform_float(stl->g_data->dpix_preview_shgrp, "line_thickness_crease", &lanpr->line_thickness_crease, 1);
-		DRW_shgroup_uniform_float(stl->g_data->dpix_preview_shgrp, "line_thickness_material", &lanpr->line_thickness_material, 1);
-		DRW_shgroup_uniform_float(stl->g_data->dpix_preview_shgrp, "line_thickness_edge_mark", &lanpr->line_thickness_edge_mark, 1);
+		DRW_shgroup_uniform_float(stl->g_data->dpix_preview_shgrp, "line_thickness", &ll->thickness, 1);
+		DRW_shgroup_uniform_float(stl->g_data->dpix_preview_shgrp, "line_thickness_crease", &ll->thickness_crease, 1);
+		DRW_shgroup_uniform_float(stl->g_data->dpix_preview_shgrp, "line_thickness_material", &ll->thickness_material, 1);
+		DRW_shgroup_uniform_float(stl->g_data->dpix_preview_shgrp, "line_thickness_edge_mark", &ll->thickness_edge_mark, 1);
 		DRW_shgroup_uniform_float(stl->g_data->dpix_preview_shgrp, "zNear", &stl->g_data->dpix_znear, 1);
 		DRW_shgroup_uniform_float(stl->g_data->dpix_preview_shgrp, "zFar", &stl->g_data->dpix_zfar, 1);
 
@@ -373,7 +374,7 @@ static void lanpr_cache_populate(void *vedata, Object *ob){
 		DRW_shgroup_call_object_add(stl->g_data->multipass_shgrp, geom, ob);
 	}
 
-	if (lanpr->master_mode == LANPR_MASTER_MODE_DPIX) {
+	if (lanpr->master_mode == LANPR_MASTER_MODE_DPIX && lanpr->active_layer) {
 		int idx = pd->begin_index;
 		if (lanpr->reloaded) {
 			pd->begin_index = lanpr_feed_atlas_data_obj(vedata, pd->atlas_pl, pd->atlas_pr, pd->atlas_nl, pd->atlas_nr, pd->atlas_edge_mask, ob, idx);
diff --git a/sour

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list