[Bf-blender-cvs] [1ff97bbfff7] blender2.8: Gawain: Better metric for VRAM usage.

Clément Foucault noreply at git.blender.org
Mon May 15 16:16:52 CEST 2017


Commit: 1ff97bbfff78a0c375fb5256a9d9d37cd3973bbe
Author: Clément Foucault
Date:   Sun May 14 16:13:32 2017 +0200
Branches: blender2.8
https://developer.blender.org/rB1ff97bbfff78a0c375fb5256a9d9d37cd3973bbe

Gawain: Better metric for VRAM usage.

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

M	intern/gawain/src/vertex_buffer.c

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

diff --git a/intern/gawain/src/vertex_buffer.c b/intern/gawain/src/vertex_buffer.c
index 12ca6ae00b1..e6514ccb3e6 100644
--- a/intern/gawain/src/vertex_buffer.c
+++ b/intern/gawain/src/vertex_buffer.c
@@ -54,8 +54,11 @@ void VertexBuffer_init_with_format(VertexBuffer* verts, const VertexFormat* form
 void VertexBuffer_discard(VertexBuffer* verts)
 	{
 	if (verts->vbo_id) {
+		int size;
+		glGetBufferParameteriv(GL_ARRAY_BUFFER, GL_BUFFER_SIZE, &size);
+		vbo_memory_usage -= size;
+
 		buffer_id_free(verts->vbo_id);
-		vbo_memory_usage -= VertexBuffer_size(verts);
 	}
 #if KEEP_SINGLE_COPY
 	else
@@ -160,7 +163,10 @@ static void VertexBuffer_prime(VertexBuffer* verts)
 	// fill with delicious data & send to GPU the first time only
 	glBufferData(GL_ARRAY_BUFFER, vertex_buffer_size(format, verts->vertex_ct), verts->data, GL_STATIC_DRAW);
 
-	vbo_memory_usage += VertexBuffer_size(verts);
+	int size;
+	glGetBufferParameteriv(GL_ARRAY_BUFFER, GL_BUFFER_SIZE, &size);
+
+	vbo_memory_usage += size;
 
 #if KEEP_SINGLE_COPY
 	// now that GL has a copy, discard original




More information about the Bf-blender-cvs mailing list