[Bf-blender-cvs] [7f1a9480fc1] soc-2019-npr: LANPR: Fixed last segment missing error on chain splitting.
YimingWu
noreply at git.blender.org
Tue Jun 4 10:43:25 CEST 2019
Commit: 7f1a9480fc16d4895858f7acdd89bf66e3d97e05
Author: YimingWu
Date: Tue Jun 4 16:41:12 2019 +0800
Branches: soc-2019-npr
https://developer.blender.org/rB7f1a9480fc16d4895858f7acdd89bf66e3d97e05
LANPR: Fixed last segment missing error on chain splitting.
===================================================================
M source/blender/draw/engines/lanpr/lanpr_chain.c
===================================================================
diff --git a/source/blender/draw/engines/lanpr/lanpr_chain.c b/source/blender/draw/engines/lanpr/lanpr_chain.c
index 5f1b1fd0920..a9e2d7f3edc 100644
--- a/source/blender/draw/engines/lanpr/lanpr_chain.c
+++ b/source/blender/draw/engines/lanpr/lanpr_chain.c
@@ -430,10 +430,10 @@ void lanpr_split_chains_for_fixed_occlusion(LANPR_RenderBuffer *rb){
LANPR_RenderLineChainItem *rlci,*next_rlci;
ListBase swap={0};
- while (rlc = BLI_pophead(&rb->chains)){
- rlc->item.next=rlc->item.prev=NULL;
- BLI_addtail(&swap,rlc);
- }
+ swap.first = rb->chains.first;
+ swap.last = rb->chains.last;
+
+ rb->chains.last = rb->chains.first = NULL;
while (rlc = BLI_pophead(&swap)){
rlc->item.next=rlc->item.prev=NULL;
@@ -449,6 +449,12 @@ void lanpr_split_chains_for_fixed_occlusion(LANPR_RenderBuffer *rb){
rlc->chain.last=rlci->item.prev;
((LANPR_RenderLineChainItem*)rlc->chain.last)->item.next=0;
rlci->item.prev=0;
+
+ //end the previous one
+ lanpr_append_render_line_chain_point(rb,rlc,rlci->pos[0],rlci->pos[1],
+ rlci->gpos[0],rlci->gpos[1],rlci->gpos[2],
+ rlci->normal,rlci->line_type,fixed_occ);
+
rlc=new_rlc;
fixed_occ = rlci->occlusion;
}
More information about the Bf-blender-cvs
mailing list