[Bf-blender-cvs] [8eb44bfb81c] temp-lanpr-review: LANPR: Renderbuffer creation changed to re-init.

YimingWu noreply at git.blender.org
Thu Nov 28 04:49:28 CET 2019


Commit: 8eb44bfb81ce0dbb6e4e08ecb5d5ab10f2ea6117
Author: YimingWu
Date:   Thu Nov 28 11:48:59 2019 +0800
Branches: temp-lanpr-review
https://developer.blender.org/rB8eb44bfb81ce0dbb6e4e08ecb5d5ab10f2ea6117

LANPR: Renderbuffer creation changed to re-init.

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

M	source/blender/editors/include/ED_lanpr.h
M	source/blender/editors/lanpr/lanpr_cpu.c

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

diff --git a/source/blender/editors/include/ED_lanpr.h b/source/blender/editors/include/ED_lanpr.h
index e7cca043a09..105d66e7b3d 100644
--- a/source/blender/editors/include/ED_lanpr.h
+++ b/source/blender/editors/include/ED_lanpr.h
@@ -309,7 +309,9 @@ typedef struct LANPR_SharedResource {
 
   int init_complete;
 
-  /** To bypass or cancel rendering. */
+  /** To bypass or cancel rendering.
+   * This status flag should be kept in lanpr_share not render_buffer.
+   */
   SpinLock lock_render_status;
   LANPR_RenderStatus flag_render_status;
 
diff --git a/source/blender/editors/lanpr/lanpr_cpu.c b/source/blender/editors/lanpr/lanpr_cpu.c
index 1e2390fb1e1..293398117af 100644
--- a/source/blender/editors/lanpr/lanpr_cpu.c
+++ b/source/blender/editors/lanpr/lanpr_cpu.c
@@ -2631,15 +2631,11 @@ void ED_lanpr_destroy_render_data(LANPR_RenderBuffer *rb)
 }
 LANPR_RenderBuffer *ED_lanpr_create_render_buffer(void)
 {
+  /* Re-init render_buffer_shared */
   if (lanpr_share.render_buffer_shared) {
     LANPR_RenderBuffer *rb = lanpr_share.render_buffer_shared;
-    ED_lanpr_destroy_render_data(lanpr_share.render_buffer_shared);
-    rb->viewport_override = lanpr_share.viewport_camera_override;
-    copy_v3db_v3fl(rb->camera_pos, lanpr_share.camera_pos);
-    rb->viewport_is_persp = lanpr_share.camera_is_persp;
-    rb->near_clip = lanpr_share.near_clip;
-    rb->far_clip = lanpr_share.far_clip;
-    return rb;
+    ED_lanpr_destroy_render_data(rb);
+    MEM_freeN(rb);
   }
 
   LANPR_RenderBuffer *rb = MEM_callocN(sizeof(LANPR_RenderBuffer), "LANPR render buffer");



More information about the Bf-blender-cvs mailing list