Interesting Retopo Idea

Maya has an interesting workaround for speeding up their retopo operations (i.e. for hit-testing a mesh with millions of polygons). In essence, they simply store the depth map on the GPU and hit test against it (as seen in this “handy hints” video on YouTube.

Retopology isn’t something I’m having huge issues with at the moment, so this isn’t a complaint from me. I have been talking to and watching sculptors that have… “some issues” with performance regarding Blender when it comes to this things, so thought I’d mention the idea while I had it.

3 Likes

Interesting yeah…

this gpu cache, I assume is also useful for speeding up mesh editing …


@mano-wii this reminds me of something … with the vbo of the old radeon hd, am I right?

I don’t see Blender’s ray casting operations having problem in peformanse.
The ray cast is operated on a BVH Tree, ie portions of the mesh are arranged in Bound Boxes.
It is like a tree comprising the smallest polygons up to the entire mesh.
So the ray does not test all the triangles of the mesh.

Using the depth buffer to simulate ray cast is possible and is already done in Blender (for example with the cursor).
But to get the same precision of the raycast it would have to have more bits for each pixel which would end up taking up more memory in Vram.

It is not a big problem if this depth buffer is limited only to the area worked. But I don’t see this as a possible “solution” to the peformase problem.

Sometimes only the communication between the GPU and the CPU is slower than the raycast operation.
If there is any problem with peformase, most likely this problem is elsewhere.

1 Like

thanks for your precious insights

what I think, the problem of performance, is that on dense geometries, to move a certain number vertex, blender keeps “in calculation” all the geometry of the whole object, even the parts not selected and therefore not manipulated …

here would serve a “trick”:
when a certain number of vertices are selected and being moved by “mouse press and drag” blender does not have to calculate the whole geomettry of the object, but only the displaced part, and redo the calculation of the whole geometry only “on mouse release - operation accomplished”

sorry if I try to describe the concept in a non-technical way