[Dyntopo sculpting] Random holes appearing while sculpting

Hi.

While sculpting a glove with dyntopo, I’m getting these holes all the time. I haven’t been able to pinpoint it to a specific setting, it seems to happen with several brushes (but maybe most likely with scrape/polish).

“Front faces only” is enabled and the mesh has no inverted normals (as you can see there on the right side of the picture). It seems that its most likely to happen when I sculpt a surface at a narrow angle. The holes happen at the opposite surface, so they are hard to notice in time and can possibly waste you a lot of work.

http://shrani.si/t/1H/on/4rBUa0Aj/holes1.jpg

This stuff is seriously annoying, especially when you start to add fine details which get destroyed and are very difficult to correct, your polycount is very high and each undo step takes an eternity to complete…

Any idea why this is happening and how to avoid it?

What is the size of your sculpt in the viewport in comparison to the default cube ?
If it is very small, maybe try to rescale it to see if it helps

If you’re certain the normals were correct on the pre-dyntopo base model, have you tried to apply the rotation/scale in Object mode (CTRL+A -> Rotation&Scale ) ?
As if the rotations and scales that could have been done in Object mode aren’t applied, it can lead into some editing tools not working as you may expect them, and possibly Dyntopo could be influenced too , i can’t say for certain.

On all my dyntopo sculpts i never ran into this one either head sculpts or characters, but if by chances you ran into a bug, it would be good to see it fixed.

Can you reproduce that problem all the time on that model with dyntopo ?
If yes, it could be interesting that you upload the model (or at least the part of it that those holes can be reproduced everytime) so it can be checked by other people and then reported in the bug tracker.

Thanks for your input, Sanctuary!

The scale is real-world scale, ie. the character I’m doing is cca 1.75m high, and the glove object fits this scale (global scale factor is 1.0). I always try to work in real-world scale. The mesh has all transforms applied.

The normals on the base mesh were all correctly pointing outward and the mesh is centered at world origin (I have it parented on an empty, which is then constrained on a controller empty for posing, but when I sculpt the constraint is disabled).

I’m able to reproduce the problem on the mesh attached below (.obj export + zipped for small size). I used an earlier version of this mesh and sculpted a bit with “collapse edges” on (20 size) to make it more lightweight. I then disabled “collapse edges”, lowered size to 16 and proceeded to use scrape on the surface you see circled in the left viewport below. The viewing direction was the same as seen in the screenshot, just more zoomed in. The holes then appeared in the projected direction of the stokes.

http://shrani.si/t/2p/iI/4ppkWPZo/glove-dyntopo-err.jpg

Glove mesh:

ob_Glove-SCU-Test.obj.zip (782 KB)

Unfortunately i can’t reproduce that with the obj i tried to match your screenshot in my own viewport but after dozen of strokes with the scrape brush, i don’t see new holes being created in the other side.

A blend (remember you can select the compress the blend when you save it in the bottom left of the Saving panels) would be more usefull as it would allow to load it and so have the model appearing with your exact angle of view and various viewport settings and would then make it easier to report to the bug tracker as the devs will need to be able to reliably reproduce the bug if we hope for it to be fixed.

I’m able to reproduce these all the time.

Here I just imported that .obj into a new blank scene.

http://shrani.si/t/3O/hO/2VrcH0Bi/glove-scu2.jpg

The viewing angle doesn’t matter, it happens everywhere. What you have to do is enable dyntopo, disable collapse edges, zoom in very close to the surface (so that you clearly see the individual triangles) an use scrape. Eventually holes will happen on the other side from where are you brushing.

It seems I cant upload the .blend because its too big?? (3 megs zipped). upload of file failed

Hi Matej,

I m having hard time to reproduce those hole with .obj file. Can you put the .blend file to pasteall.org may be we can see better what is going on there?

Hi erickBlender, here’s the file:

http://www.pasteall.org/blend/24762

But the .blend really doesnt matter on my end. I’m able to reproduce it with the raw mesh imported into a new scene. I just scrape “close enough” to the surface and the holes eventually appear on the other side. Another correlation: the more zoomed in (the smaller the area brushed), the smaller are the holes.

This screen shows the scraped area and rough zoom level at which I get this errors:

http://shrani.si/t/1t/x0/2CV82iQp/scu3.jpg

Finally managed to get the holes with your blend.
I tried from roughly the level of zoom from your screenshot and couldn’t.

But once i zoomed in really, really really close to the surface, holes appeared in the other side of the model for every strokes of the scrap brush.

Odd that i need to zoom in that close in comparison to you, but the good thing is that i can reproduce it.

And i can reproduce it on a subdivided cube now if i use the same level of extreme zoom in with dyntopo and that scrape brush, i reported it there :
https://projects.blender.org/tracker/index.php?func=detail&aid=37177&group_id=9&atid=498

And linked to this thread so they can try your more complex model (as i used the simple subdivided cube as an example) and read your own test for this problem (as i detailled step by step for the simpler example only)

Thanks Sanctuary for your time & help.

These errors are more likely to occur at higher zoom (smaller scale), but I was getting them during regular work on this glove model, in not such extreme circumstances. The smallest details were seams, but the holes appeared already when I worked on bigger details like wrinkles.

As I said I work in real-world scale, but now I tried to scale the model up x10 and it seems I cant reproduce this. It looks like a problem with floating point precision?

So, a temporary workaround is to scale up the model and then scale it back to its regular size when you are done sculpting.

Developer Sci-fi posted this on the SVN trunk commits.
//-------------------------------------------------------------------------------------
Fix part 1 of #37177 spikes in sculpting.

Was a typo from refactor to calculate sculpt plane from forward facing
vertices only. The branch of the code that did the calculation would end
up with a nice division by a wrong number.
//-------------------------------------------------------------------------------------

On the bug tracker listed, he says that the part about the holes showing up is fixed but that sculpting brushes are sometimes still drawing through to the other side. It’s still being investigated.