[Bf-blender-cvs] [28212da97f8] soc-2019-npr: LANPR: new layer now increase occlusion level automatically.
YimingWu
noreply at git.blender.org
Thu Jul 4 08:32:18 CEST 2019
Commit: 28212da97f8406485e8262b2d0a04f3a355b3f91
Author: YimingWu
Date: Thu Jul 4 13:41:09 2019 +0800
Branches: soc-2019-npr
https://developer.blender.org/rB28212da97f8406485e8262b2d0a04f3a355b3f91
LANPR: new layer now increase occlusion level automatically.
===================================================================
M source/blender/draw/engines/lanpr/lanpr_ops.c
M source/blender/makesdna/DNA_scene_types.h
===================================================================
diff --git a/source/blender/draw/engines/lanpr/lanpr_ops.c b/source/blender/draw/engines/lanpr/lanpr_ops.c
index e13c3f81fbd..dc5725f2083 100644
--- a/source/blender/draw/engines/lanpr/lanpr_ops.c
+++ b/source/blender/draw/engines/lanpr/lanpr_ops.c
@@ -4295,8 +4295,19 @@ void SCENE_OT_lanpr_calculate_feature_lines(struct wmOperatorType *ot)
LANPR_LineLayer *lanpr_new_line_layer(SceneLANPR *lanpr)
{
LANPR_LineLayer *ll = MEM_callocN(sizeof(LANPR_LineLayer), "Line Layer");
- BLI_addtail(&lanpr->line_layers, ll);
- lanpr->active_layer = ll;
+ LANPR_LineLayer *lli;
+ int max_occ = 0, max;
+ for (lli = lanpr->line_layers.first; lli; lli = lli->next) {
+ if (lli->use_multiple_levels) {
+ max = MAX2(lli->qi_begin, lli->qi_end);
+ }
+ else {
+ max = lli->qi_begin;
+ }
+ max_occ = MAX2(max, max_occ);
+ }
+
+ ll->qi_begin = ll->qi_end = max_occ + 1;
ll->use_same_style = 1;
ll->thickness = 1.0f;
ll->color[0] = 1.0f;
@@ -4308,6 +4319,10 @@ LANPR_LineLayer *lanpr_new_line_layer(SceneLANPR *lanpr)
ll->enable_material_seperate = 1;
ll->enable_edge_mark = 1;
ll->enable_intersection = 1;
+
+ lanpr->active_layer = ll;
+ BLI_addtail(&lanpr->line_layers, ll);
+
return ll;
}
LANPR_LineLayerComponent *lanpr_new_line_component(SceneLANPR *lanpr)
diff --git a/source/blender/makesdna/DNA_scene_types.h b/source/blender/makesdna/DNA_scene_types.h
index 20c80badbcc..8f959e1e090 100644
--- a/source/blender/makesdna/DNA_scene_types.h
+++ b/source/blender/makesdna/DNA_scene_types.h
@@ -1696,7 +1696,7 @@ typedef struct SceneLANPR {
float chaining_geometry_threshold;
float chaining_image_threshold;
- int max_occlusion; /* Defaults to 1 to increase speed in complex scenes. */
+ char _pad2[4];
} SceneLANPR;
More information about the Bf-blender-cvs
mailing list