[Bf-blender-cvs] [9f94f17ea48] blender2.8: Eevee: Fix crash with volumetrics.

Clément Foucault noreply at git.blender.org
Tue Jan 9 17:29:59 CET 2018


Commit: 9f94f17ea486c1b230e53ee85cc19897385b432f
Author: Clément Foucault
Date:   Tue Jan 9 17:29:28 2018 +0100
Branches: blender2.8
https://developer.blender.org/rB9f94f17ea486c1b230e53ee85cc19897385b432f

Eevee: Fix crash with volumetrics.

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

M	source/blender/draw/intern/draw_manager.c

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

diff --git a/source/blender/draw/intern/draw_manager.c b/source/blender/draw/intern/draw_manager.c
index 0759e239aa9..664c93a4fe4 100644
--- a/source/blender/draw/intern/draw_manager.c
+++ b/source/blender/draw/intern/draw_manager.c
@@ -1219,7 +1219,13 @@ static void shgroup_dynamic_batch(DRWShadingGroup *shgroup)
 
 	/* Upload Data */
 	Gwn_VertBuf *vbo = GWN_vertbuf_create_with_format(&interface->vbo_format);
-	GWN_vertbuf_data_set(vbo, nbr, DRW_instance_data_get(interface->inst_data), false);
+	if (interface->inst_data) {
+		GWN_vertbuf_data_set(vbo, nbr, DRW_instance_data_get(interface->inst_data), false);
+	} else {
+		/* Use unitialized memory. This is for dummy vertex buffers. */
+		/* XXX TODO do not alloc at all. */
+		GWN_vertbuf_data_alloc(vbo, nbr);
+	}
 
 	/* TODO make the batch dynamic instead of freeing it every times */
 	if (shgroup->batch_geom)



More information about the Bf-blender-cvs mailing list