[Bf-blender-cvs] [c795505a2c7] blender2.8: Cleanup: dyntopo sculpt draw update: use same BM_face_as_array_vert_tri for indexbuf generation.
Bastien Montagne
noreply at git.blender.org
Tue Jun 26 11:43:28 CEST 2018
Commit: c795505a2c751e1396029c8797af79e1b5b98447
Author: Bastien Montagne
Date: Tue Jun 26 11:41:59 2018 +0200
Branches: blender2.8
https://developer.blender.org/rBc795505a2c751e1396029c8797af79e1b5b98447
Cleanup: dyntopo sculpt draw update: use same BM_face_as_array_vert_tri for indexbuf generation.
It's cleaner, and actually assert that BMFace is a triangle. Same code
as when generating vertexbuf for flat shading!
===================================================================
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 462785a5dcb..688386810ea 100644
--- a/source/blender/gpu/intern/gpu_buffers.c
+++ b/source/blender/gpu/intern/gpu_buffers.c
@@ -908,13 +908,11 @@ void GPU_pbvh_bmesh_buffers_update(
BMFace *f = BLI_gsetIterator_getKey(&gs_iter);
if (!BM_elem_flag_test(f, BM_ELEM_HIDDEN)) {
- BMLoop *l_iter;
- BMLoop *l_first;
+ BMVert *v[3];
- l_iter = l_first = BM_FACE_FIRST_LOOP(f);
- do {
- GWN_indexbuf_add_generic_vert(&elb, BM_elem_index_get(l_iter->v));
- } while ((l_iter = l_iter->next) != l_first);
+ BM_face_as_array_vert_tri(f, v);
+ GWN_indexbuf_add_tri_verts(
+ &elb, BM_elem_index_get(v[0]), BM_elem_index_get(v[1]), BM_elem_index_get(v[2]));
}
}
More information about the Bf-blender-cvs
mailing list