[Bf-blender-cvs] [0a28eb6dbe8] greasepencil-object: Fix compiler warnings after merge

Joshua Leung noreply at git.blender.org
Fri May 4 16:06:37 CEST 2018


Commit: 0a28eb6dbe805153f3d9204d26130f32b8fd9ca5
Author: Joshua Leung
Date:   Fri May 4 15:48:22 2018 +0200
Branches: greasepencil-object
https://developer.blender.org/rB0a28eb6dbe805153f3d9204d26130f32b8fd9ca5

Fix compiler warnings after merge

* Adapted various DRW_* identifiers that got cleaned up in 2.8

* BKE_gpencil_frame_color_duplicate() - should be removed

* File versioning code for GP annotation datablocks - knock this out for now
  (since it's causing compiling problems due to the view layer stuff being
  deprecated). We need to review whether we do this type of patching automatically,
  since we don't really want GP annotations to show up on Cycles renders for example.

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

M	source/blender/blenkernel/intern/gpencil.c
M	source/blender/blenloader/intern/versioning_280.c
M	source/blender/draw/engines/gpencil/gpencil_depth_of_field.c
M	source/blender/draw/engines/gpencil/gpencil_draw_cache_impl.c
M	source/blender/draw/engines/gpencil/gpencil_engine.c
M	source/blender/editors/gpencil/gpencil_data.c
M	source/blender/editors/space_view3d/view3d_manipulator_ruler.c
M	source/blender/editors/space_view3d/view3d_ruler.c
M	source/blender/gpu/intern/gpu_shader.c

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

diff --git a/source/blender/blenkernel/intern/gpencil.c b/source/blender/blenkernel/intern/gpencil.c
index 1b7a61c1987..529e0d25269 100644
--- a/source/blender/blenkernel/intern/gpencil.c
+++ b/source/blender/blenkernel/intern/gpencil.c
@@ -605,6 +605,7 @@ void BKE_gpencil_frame_copy_strokes(bGPDframe *gpf_src, struct bGPDframe *gpf_ds
 }
 
 /* make a copy of a given gpencil frame and copy colors too */
+// XXX: C and GPD unused... deprecate this function?
 bGPDframe *BKE_gpencil_frame_color_duplicate(const bContext *C, bGPdata *gpd, const bGPDframe *gpf_src)
 {
 	bGPDstroke *gps_dst;
diff --git a/source/blender/blenloader/intern/versioning_280.c b/source/blender/blenloader/intern/versioning_280.c
index a52f51089b7..b8c4d49ea34 100644
--- a/source/blender/blenloader/intern/versioning_280.c
+++ b/source/blender/blenloader/intern/versioning_280.c
@@ -696,10 +696,11 @@ void do_versions_after_linking_280(Main *main)
 
 	/* Grease Pencil Object */
 	/* Convert grease pencil datablock to GP object */
+#if 0 /* XXX: Needs review - maybe we don't want to do this, as annotations could cause havok on cycles files! */
 	for (Scene *scene = main->scene.first; scene; scene = scene->id.next) {
 		if (scene->gpd) {
 			Object *ob;
-			ViewLayer *view_layer = BKE_view_layer_from_scene_get(scene);
+			ViewLayer *view_layer = scene->view_layers.first; /* Weak, but at least it goes somewhere... */
 			if (view_layer == NULL) {
 				view_layer = BKE_view_layer_add(scene, "Viewport");
 				printf("added scene layer again - %p\n", view_layer);
@@ -771,7 +772,7 @@ void do_versions_after_linking_280(Main *main)
 			}
 		}
 	}
-
+#endif
 }
 
 static void do_version_layer_collections_idproperties(ListBase *lb)
diff --git a/source/blender/draw/engines/gpencil/gpencil_depth_of_field.c b/source/blender/draw/engines/gpencil/gpencil_depth_of_field.c
index dfdbd8ddb52..eb260bd5b1c 100644
--- a/source/blender/draw/engines/gpencil/gpencil_depth_of_field.c
+++ b/source/blender/draw/engines/gpencil/gpencil_depth_of_field.c
@@ -114,13 +114,13 @@ int GPENCIL_depth_of_field_init(DrawEngineType *draw_engine_gpencil_type, GPENCI
 		int buffer_size[2] = { (int)viewport_size[0] / 2, (int)viewport_size[1] / 2 };
 
 		/* Setup buffers */
-		e_data->gpencil_dof_down_near = DRW_texture_pool_query_2D(buffer_size[0], buffer_size[1], DRW_TEX_RGBA_16,
+		e_data->gpencil_dof_down_near = DRW_texture_pool_query_2D(buffer_size[0], buffer_size[1], GPU_RGBA16F,
 														   draw_engine_gpencil_type);
-		e_data->gpencil_dof_down_far = DRW_texture_pool_query_2D(buffer_size[0], buffer_size[1], DRW_TEX_RGBA_16,
+		e_data->gpencil_dof_down_far = DRW_texture_pool_query_2D(buffer_size[0], buffer_size[1], GPU_RGBA16F,
 														   draw_engine_gpencil_type);
-		e_data->gpencil_dof_coc = DRW_texture_pool_query_2D(buffer_size[0], buffer_size[1], DRW_TEX_RG_16,
+		e_data->gpencil_dof_coc = DRW_texture_pool_query_2D(buffer_size[0], buffer_size[1], GPU_R16F,
 														   draw_engine_gpencil_type);
-		e_data->gpencil_dof_weight = DRW_texture_pool_query_2D(buffer_size[0], buffer_size[1], DRW_TEX_R_16,
+		e_data->gpencil_dof_weight = DRW_texture_pool_query_2D(buffer_size[0], buffer_size[1], GPU_R16F,
 														   draw_engine_gpencil_type);
 
 		GPU_framebuffer_ensure_config(&fbl->dof_down_fb, {
@@ -131,7 +131,7 @@ int GPENCIL_depth_of_field_init(DrawEngineType *draw_engine_gpencil_type, GPENCI
 		});
 			
 		/* Go full 32bits for rendering and reduce the color artifacts. */
-		DRWTextureFormat fb_format = DRW_state_is_image_render() ? DRW_TEX_RGBA_32 : DRW_TEX_RGBA_16;
+		GPUTextureFormat fb_format = DRW_state_is_image_render() ? GPU_RGBA32F : GPU_RGBA16F;
 
 		e_data->gpencil_dof_far_blur = DRW_texture_pool_query_2D(buffer_size[0], buffer_size[1], fb_format,
 														  draw_engine_gpencil_type);
diff --git a/source/blender/draw/engines/gpencil/gpencil_draw_cache_impl.c b/source/blender/draw/engines/gpencil/gpencil_draw_cache_impl.c
index 049333f9210..957c58b4171 100644
--- a/source/blender/draw/engines/gpencil/gpencil_draw_cache_impl.c
+++ b/source/blender/draw/engines/gpencil/gpencil_draw_cache_impl.c
@@ -1039,7 +1039,7 @@ struct GPUTexture *DRW_gpencil_create_blank_texture(int width, int height)
 	int h = height;
 	float *final_rect = MEM_callocN(sizeof(float) * 4 * w * h, "Gpencil Blank Texture");
 
-	tex = DRW_texture_create_2D(w, h, DRW_TEX_RGBA_8, DRW_TEX_FILTER, final_rect);
+	tex = DRW_texture_create_2D(w, h, GPU_RGBA8, DRW_TEX_FILTER, final_rect);
 	MEM_freeN(final_rect);
 
 	return tex;
diff --git a/source/blender/draw/engines/gpencil/gpencil_engine.c b/source/blender/draw/engines/gpencil/gpencil_engine.c
index d189b1afaa9..d2b68305921 100644
--- a/source/blender/draw/engines/gpencil/gpencil_engine.c
+++ b/source/blender/draw/engines/gpencil/gpencil_engine.c
@@ -84,14 +84,14 @@ static void GPENCIL_create_framebuffers(void *vedata)
 	GPENCIL_FramebufferList *fbl = ((GPENCIL_Data *)vedata)->fbl;
 
 	/* Go full 32bits for rendering */
-	DRWTextureFormat fb_format = DRW_state_is_image_render() ? DRW_TEX_RGBA_32 : DRW_TEX_RGBA_16;
+	GPUTextureFormat fb_format = DRW_state_is_image_render() ? GPU_RGBA32F : GPU_RGBA16F;
 
 	if (DRW_state_is_fbo()) {
 		const float *viewport_size = DRW_viewport_size_get();
 		const int size[2] = { (int)viewport_size[0], (int)viewport_size[1] };
 
 		/* vfx (ping-pong textures) */
-		e_data.vfx_depth_tx_a = DRW_texture_pool_query_2D(size[0], size[1], DRW_TEX_DEPTH_24_STENCIL_8,
+		e_data.vfx_depth_tx_a = DRW_texture_pool_query_2D(size[0], size[1], GPU_DEPTH24_STENCIL8,
 			&draw_engine_object_type);
 		e_data.vfx_color_tx_a = DRW_texture_pool_query_2D(size[0], size[1], fb_format,
 			&draw_engine_object_type);
@@ -100,7 +100,7 @@ static void GPENCIL_create_framebuffers(void *vedata)
 			GPU_ATTACHMENT_TEXTURE(e_data.vfx_color_tx_a)
 			});
 
-		e_data.vfx_depth_tx_b = DRW_texture_pool_query_2D(size[0], size[1], DRW_TEX_DEPTH_24_STENCIL_8,
+		e_data.vfx_depth_tx_b = DRW_texture_pool_query_2D(size[0], size[1], GPU_DEPTH24_STENCIL8,
 			&draw_engine_object_type);
 		e_data.vfx_color_tx_b = DRW_texture_pool_query_2D(size[0], size[1], fb_format,
 			&draw_engine_object_type);
@@ -110,9 +110,9 @@ static void GPENCIL_create_framebuffers(void *vedata)
 			});
 
 		/* painting framebuffer to speed up drawing process (always 16 bits) */
-		e_data.painting_depth_tx = DRW_texture_pool_query_2D(size[0], size[1], DRW_TEX_DEPTH_24_STENCIL_8,
+		e_data.painting_depth_tx = DRW_texture_pool_query_2D(size[0], size[1], GPU_DEPTH24_STENCIL8,
 			&draw_engine_object_type);
-		e_data.painting_color_tx = DRW_texture_pool_query_2D(size[0], size[1], DRW_TEX_RGBA_16,
+		e_data.painting_color_tx = DRW_texture_pool_query_2D(size[0], size[1], GPU_RGBA16F,
 			&draw_engine_object_type);
 		GPU_framebuffer_ensure_config(&fbl->painting_fb, {
 			GPU_ATTACHMENT_TEXTURE(e_data.painting_depth_tx),
@@ -658,6 +658,7 @@ static void GPENCIL_draw_scene(void *vedata)
 	GPENCIL_PassList *psl = ((GPENCIL_Data *)vedata)->psl;
 	GPENCIL_FramebufferList *fbl = ((GPENCIL_Data *)vedata)->fbl;
 	DefaultFramebufferList *dfbl = DRW_viewport_framebuffer_list_get();
+	DefaultTextureList *dtxl = DRW_viewport_texture_list_get();
 
 	int init_grp, end_grp;
 	tGPencilObjectCache *cache;
@@ -683,12 +684,12 @@ static void GPENCIL_draw_scene(void *vedata)
 	if ((!is_render) && (stl->g_data->session_flag & GP_DRW_PAINT_PAINTING)) {
 		GPU_framebuffer_bind(dfbl->default_fb);
 
-		MULTISAMPLE_SYNC_ENABLE(dfbl);
+		MULTISAMPLE_SYNC_ENABLE(dfbl, dtxl);
 		
 		DRW_draw_pass(psl->painting_pass);
 		DRW_draw_pass(psl->drawing_pass);
 
-		MULTISAMPLE_SYNC_DISABLE(dfbl);
+		MULTISAMPLE_SYNC_DISABLE(dfbl, dtxl);
 
 		/* free memory */
 		gpencil_free_obj_list(stl);
@@ -842,8 +843,8 @@ static void DRW_framebuffer_multisample_ensure(DefaultFramebufferList *dfbl, Def
 		if (!dfbl->multisample_fb) {
 			dfbl->multisample_fb = GPU_framebuffer_create();
 			if (dfbl->multisample_fb) {
-				dtxl->multisample_color = GPU_texture_create_2D_multisample(rect_w, rect_h, NULL, U.ogl_multisamples, NULL);
-				dtxl->multisample_depth = GPU_texture_create_depth_with_stencil_multisample(rect_w, rect_h, U.ogl_multisamples, NULL);
+				dtxl->multisample_color = GPU_texture_create_2D_multisample(rect_w, rect_h, GPU_RGBA8, NULL, U.ogl_multisamples, NULL);
+				dtxl->multisample_depth = GPU_texture_create_2D_multisample(rect_w, rect_h, GPU_DEPTH24_STENCIL8, NULL, U.ogl_multisamples, NULL);
 				GPU_framebuffer_ensure_config(&dfbl->multisample_fb, {
 					GPU_ATTACHMENT_TEXTURE(dtxl->multisample_depth),
 					GPU_ATTACHMENT_TEXTURE(dtxl->multisample_color)
@@ -881,9 +882,9 @@ static void GPENCIL_render_init(GPENCIL_Data *ved, RenderEngine *engine, struct
 		DRW_framebuffer_multisample_ensure(dfbl, dtxl, rect_w, rect_h);
 	}
 
-	e_data.render_depth_tx = DRW_texture_pool_query_2D(size[0], size[1], DRW_TEX_DEPTH_24_STENCIL_8,
+	e_data.render_depth_tx = DRW_texture_pool_query_2D(size[0], size[1], GPU_DEPTH24_STENCIL8,
 		&draw_engine_object_type);
-	e_data.render_color_tx = DRW_texture_pool_query_2D(size[0], size[1], DRW_TEX_RGBA_32,
+	e_data.render_color_tx = DRW_texture_pool_query_2D(size[0], size[1], GPU_RGBA32F,
 		&draw_engine_object_type);
 	GPU_framebuffer_ensure_config(&fbl->main, {
 		GPU_ATTACHMENT_TEXTURE(e_data.render_depth_tx),
diff --git a/source/blender/editors/gpencil/gpencil_data.c b/source/blender/editors/gpencil/gpencil_data.c
index 23771947e8d..97155d0a48a 100644
--- a/source/blender/editors/gpencil/gpencil_data.c
+++ b/source/blender/editors/gpencil/gpencil_data.c
@@ -1961,7 +1961,7 @@ int ED_gpencil_join_objects_exec(bContext *C, wmOperator *op)
 				if (base->object->adt) {
 					if (obact->adt == NULL) {
 						/* no animdata, so just use a copy of the whole thing */
-						obact->adt = BKE_animdata_copy(bmain, base->object->adt, false);
+						obact->adt = BKE_animdata_copy(bmain, base->object->adt, false, true);
 					}
 					else {
 						/* merge in data - we'll fix the drivers manually */
@@ -1972,7 +1972,7 @@ int ED_gpencil_join_objects_exec(bContext *C, wmOperator *op)
 				if (gpd_src->adt) {
 					if (gpd_dst->adt == NULL) {
 						/* no animdata, so just use a copy of the whole thing */
-						gpd_dst->adt = BKE_animdata

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list