[Bf-blender-cvs] [847192b3d6e] soc-2019-npr: Use DRW_view APIs. (Potentially not doing it correctly.)

YimingWu noreply at git.blender.org
Tue May 28 10:33:08 CEST 2019


Commit: 847192b3d6e8cb572be44002dbe5c26e70592f81
Author: YimingWu
Date:   Tue May 28 16:32:11 2019 +0800
Branches: soc-2019-npr
https://developer.blender.org/rB847192b3d6e8cb572be44002dbe5c26e70592f81

Use DRW_view APIs. (Potentially not doing it correctly.)

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

M	source/blender/draw/engines/lanpr/lanpr_engine.c
M	source/blender/draw/engines/lanpr/lanpr_ops.c

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

diff --git a/source/blender/draw/engines/lanpr/lanpr_engine.c b/source/blender/draw/engines/lanpr/lanpr_engine.c
index c66d7011dc1..f56bc1948aa 100644
--- a/source/blender/draw/engines/lanpr/lanpr_engine.c
+++ b/source/blender/draw/engines/lanpr/lanpr_engine.c
@@ -477,7 +477,7 @@ void LANPR_render_cache(
 
 }
 
-static void workbench_render_matrices_init(RenderEngine *engine, Depsgraph *depsgraph)
+static void lanpr_render_matrices_init(RenderEngine *engine, Depsgraph *depsgraph)
 {
 	/* TODO(sergey): Shall render hold pointer to an evaluated camera instead? */
 	Scene *scene = DEG_get_evaluated_scene(depsgraph);
@@ -500,12 +500,9 @@ static void workbench_render_matrices_init(RenderEngine *engine, Depsgraph *deps
 
 	unit_m4(unitmat);
 
-	DRW_viewport_matrix_override_set(persmat, DRW_MAT_PERS);
-	DRW_viewport_matrix_override_set(persinv, DRW_MAT_PERSINV);
-	DRW_viewport_matrix_override_set(winmat, DRW_MAT_WIN);
-	DRW_viewport_matrix_override_set(wininv, DRW_MAT_WININV);
-	DRW_viewport_matrix_override_set(viewmat, DRW_MAT_VIEW);
-	DRW_viewport_matrix_override_set(viewinv, DRW_MAT_VIEWINV);
+	DRWView *view = DRW_view_create(viewmat, winmat, NULL, NULL, NULL);
+ 	DRW_view_default_set(view);
+  	DRW_view_set_active(view);
 }
 
 int lanpr_compute_feature_lines_internal(Depsgraph *depsgraph, SceneLANPR *lanpr, Scene *scene);
@@ -550,7 +547,7 @@ static void lanpr_render_to_image(LANPR_Data *vedata, RenderEngine *engine, stru
 		}
 	}
 
-	workbench_render_matrices_init(engine, draw_ctx->depsgraph);
+	lanpr_render_matrices_init(engine, draw_ctx->depsgraph);
 
 	/* refered to eevee's code */
 
diff --git a/source/blender/draw/engines/lanpr/lanpr_ops.c b/source/blender/draw/engines/lanpr/lanpr_ops.c
index c94669745d5..65607ad9989 100644
--- a/source/blender/draw/engines/lanpr/lanpr_ops.c
+++ b/source/blender/draw/engines/lanpr/lanpr_ops.c
@@ -3252,13 +3252,10 @@ void lanpr_software_draw_scene(void *vedata, GPUFrameBuffer *dfb, int is_render)
 		pd->dpix_viewport[3] = texh;
 
 		unit_m4(indentity_mat);
-
-		DRW_viewport_matrix_override_set(indentity_mat, DRW_MAT_PERS);
-		DRW_viewport_matrix_override_set(indentity_mat, DRW_MAT_PERSINV);
-		DRW_viewport_matrix_override_set(indentity_mat, DRW_MAT_WIN);
-		DRW_viewport_matrix_override_set(indentity_mat, DRW_MAT_WININV);
-		DRW_viewport_matrix_override_set(indentity_mat, DRW_MAT_VIEW);
-		DRW_viewport_matrix_override_set(indentity_mat, DRW_MAT_VIEWINV);
+		
+		DRWView *view = DRW_view_create(indentity_mat, indentity_mat, NULL, NULL, NULL);
+		DRW_view_default_set(view);
+		DRW_view_set_active(view);
 
 		if (lanpr->enable_chaining && lanpr->render_buffer->ChainDrawBatch) {
 			for (ll = lanpr->line_layers.last; ll; ll = ll->prev) {



More information about the Bf-blender-cvs mailing list