[Bf-blender-cvs] [e90fea7] master: Fix T45654 fast navigate artifacts.
Antony Riakiotakis
noreply at git.blender.org
Mon Aug 3 17:47:24 CEST 2015
Commit: e90fea72c1430d270ccf4b5c3880f7e25e35947e
Author: Antony Riakiotakis
Date: Mon Aug 3 17:47:03 2015 +0200
Branches: master
https://developer.blender.org/rBe90fea72c1430d270ccf4b5c3880f7e25e35947e
Fix T45654 fast navigate artifacts.
Was overdrawing the buffer, in case of fast drawing just use one
draw call. Should also make performance quite smoother.
Note:
Just discovered we are doing one draw call - per grid - in multires
apparently to keep reusing the same element buffer.
This is horribly, dreadfully slow and will check about fixing it later.
===================================================================
M source/blender/gpu/intern/gpu_buffers.c
===================================================================
diff --git a/source/blender/gpu/intern/gpu_buffers.c b/source/blender/gpu/intern/gpu_buffers.c
index 2e1b866..16dfa18 100644
--- a/source/blender/gpu/intern/gpu_buffers.c
+++ b/source/blender/gpu/intern/gpu_buffers.c
@@ -2012,7 +2012,7 @@ void GPU_draw_pbvh_buffers(GPU_PBVH_Buffers *buffers, DMSetMaterial setMaterial,
if (buffers->tot_quad) {
const char *offset = base;
- int i, last = buffers->has_hidden ? 1 : buffers->totgrid;
+ int i, last = (buffers->has_hidden || do_fast) ? 1 : buffers->totgrid;
for (i = 0; i < last; i++) {
glVertexPointer(3, GL_FLOAT, sizeof(VertexBufferFormat),
offset + offsetof(VertexBufferFormat, co));
More information about the Bf-blender-cvs
mailing list