Page MenuHome

Dyntopo warning message won't go away after entering vertex paint mode once
Open, ConfirmedPublic

Description

System Information
Ubuntu 14.04 LTS, some on-board graphics card

Blender Version
Blender 2.79b

Short description of error
When sculpting with dyntopo, if you enter vertex paint mode once, dyntopo will from then on always be disabled upon entering sculpt mode, and enabling it will always give a vertex data warning message.

Exact steps for others to reproduce the error

  1. Open a new scene with the default cube selected.
  2. Go to sculpt mode.
  3. Enable dyntopo in the tool shelf.
  4. Go to object mode, then back to sculpt mode. Dyntopo is still enabled, as expected.
  5. Go to vertex paint mode, then go back to sculpt mode. Dyntopo has now been automatically disabled with a vertex data warning.
  6. From now on, after going out of and back into sculpt mode, dyntopo will always be disabled, and enabling it will always give the vertex data warning message.
  7. As far as I can tell, there's no way on the UI to remove the vertex color data that was apparently added when vertex paint mode was entered. Thus, it becomes impossible to make the vertex data warning message go away for good, or to keep dyntopo enabled when leaving and reentering sculpt mode.

Additonal note: I discovered this issue during a sculpting project when I accidentally entered vertex paint mode by clicking on the wrong button in the pie menu. This could easily happen to others!

Details

Type
Bug

Event Timeline

Unfortunately these 2 features contradict each other on a fundamental level so this is the way it has to be...

Unless maybe if (combo of speculation) enabling the dyntopo again would instead of removing vertex color information completely keep it in memory and paint it from a point cloud of vertices each having it's vertex color and always looking at colors of closest point (vertex) around to determine gradients..

However this would have to run on GPU to be viable for dense meshes.

I suppose it can be done but the workload for such a bugfix to work properly is not trivial and also not the focus right now, especially when there's a reasonable alternative that is to use the multires modifier instead (possibly one that already further subdivides an already denser mesh that is vertex painted)

If you refer to the warning always appearing again and dyntopo being automaticaly disabled then maybe it would make sense to not show it again and keep it enabled but this happens because vertex color data was detected.

I checked and simply enabling dyntopo doesn't actually delete your vertex color data and only replaces them with white on parts of the mesh that you sculpt on.

Then maybe the warning doesn't have to appear multiple times for the same object but always only once and then never again?

As far as I'm concerned, the only two issues are (1) the annoying warning message that just keeps popping up, and (2) the fact that now with vertex color data added I have to keep enabling dyntopo all the time. Personally, I've never really needed vertex painting, and I feel that with the modern PBR workflow that everybody uses these days, vertex painting is becoming less and less important.

So, in my opinion, a simple, hopefully low-effort solution like the following two would already be plenty:

  1. When the warning message pops up, give the user the option to nuke all vertex color data on the object. This way the warning message won't show up again, and the dyntopo state will then also be remembered when leaving and reentering sculpt mode. In addition, should the hapless user accidentally enter vertex paint mode again, he or she can simply opt to nuke the newly added vertex color data again.
  1. When the warning message pops up, point out to the user that he or she has to manually remove the vertex color data. Then add a "Clear vertex color data" button somewhere on the UI, e.g.:
    • in vertex paint mode in the tool shelf and/or header menu
    • on the Data tab under "Geometry Data" right next to the other "Clear" buttons, such as "Clear Sculpt-Mask Data" and "Clear Skin Data".

Solution #1 would be more convenient, but also more dangerous, because all of a sudden the user is given the option to wipe out all vertex color data. The two solutions could also be combined.

Just click on the minus next to vertex color data and that deletes it.

Seems a little too elaborate to add an isolated option to delete vertex data from inside the sculpt mode. The warning message is there for a reason but maybe it could only appear once after Blender startup so that it doesn't pop up again and again and again during work.

I personally use Vertex Color for a lot of stuff and find it very valuable. It is great for masking textures for example. (and much much more^^)

Ah, sorry, looks like my initial bug report was misleading.

Indeed, if you follow the steps to reproduce listed above and then remove the vertex colors from the list, the dyntopo warning message disappears and the dyntopo state is also remembered.

But! I have this test blend file here where the dyntopo issue still occurs. The test file is based on my original sculpt file, and I simplified it down to a single vertex at the origin. I removed all object data that I was able to remove, including the vertex colors, and yet the warning message still appears, and the dyntopo enabled state is not remembered.

So now it looks like some unidentified custom data is lurking around in there and causing the dyntopo issue. Thus, what would resolve the issue for me would be a more informative warning message, one that specifically says what kind of custom data is causing the problem, so that I can go about removing it. An option to remove the custom data would be even better.

Brecht Van Lommel (brecht) triaged this task as Confirmed priority.Oct 14 2018, 1:32 PM