[Bf-blender-cvs] [206dead8605] master: Sculpt: Fix T101467: Improper vertex count in pbvh draw

Joseph Eagar noreply at git.blender.org
Sat Oct 1 00:41:29 CEST 2022


Commit: 206dead86058d58f1e0f402efb2c37930aadc661
Author: Joseph Eagar
Date:   Fri Sep 30 15:40:50 2022 -0700
Branches: master
https://developer.blender.org/rB206dead86058d58f1e0f402efb2c37930aadc661

Sculpt: Fix T101467: Improper vertex count in pbvh draw

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

M	source/blender/draw/intern/draw_pbvh.cc

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

diff --git a/source/blender/draw/intern/draw_pbvh.cc b/source/blender/draw/intern/draw_pbvh.cc
index e0231e36e8e..287270079e5 100644
--- a/source/blender/draw/intern/draw_pbvh.cc
+++ b/source/blender/draw/intern/draw_pbvh.cc
@@ -498,8 +498,6 @@ struct PBVHBatches {
 
   void fill_vbo_faces(PBVHVbo &vbo, PBVH_GPU_Args *args)
   {
-    int totvert = args->totprim * 3;
-
     auto foreach_faces =
         [&](std::function<void(int buffer_i, int tri_i, int vertex_i, const MLoopTri *tri)> func) {
           int buffer_i = 0;
@@ -521,6 +519,9 @@ struct PBVHBatches {
           }
         };
 
+    int totvert = 0;
+    foreach_faces([&totvert](int, int, int, const MLoopTri *) { totvert++; });
+
     int existing_num = GPU_vertbuf_get_vertex_len(vbo.vert_buf);
     void *existing_data = GPU_vertbuf_get_data(vbo.vert_buf);



More information about the Bf-blender-cvs mailing list