Page MenuHome

Multires & Undo & Frame Change causes weird behaviour with shapekeys
Confirmed, NormalPublic

Description

System Information
Operating system: Kubuntu 19.10
Graphics card: Nviia GTX 1080 (driver 440)

Blender Version
Broken: 2.90.2; 20202-05-15 19:12
Hash eaf7d36d66e5
Built by running "make full"

Short description of error
When using a multi-res mesh with certain shape-keys, bad results may occur. Create a multi-resolution modifier and subdivide with at least one shapekey active. While subdividing, artifacts may appear in the multiresolution levels. Even if they do not appear, sculpting, undo-ing, then changing frame causes a multi-res explosion.

Exact steps for others to reproduce the error

  1. Create a mesh and do some editing.
  2. Create a shapekey and do some editing. Modify the topology of the mesh in the shape key. (This bug seems to occur even if you don't modify the topology, but doing this seems to make it worse).
  3. Repeat step 2 as desired. The more, the messier!
  4. Optional: now edit the topology of the basis shape.
  5. Exit edit mode -- make sure at least one shapekey is enabled.
  6. Create a multiresolution modifer and subdivide a few times.
  7. Enter sculpt mode and do some sculpting.
  8. Undo
  9. Change frames

In Sculpt mode with multi-resolution, if I sculpt a bit, undo, then change frame, I get a multi-res explosion.

Additionally, the transform tools seem to cause the same explosion, without changing frame
I think that it's just any update to the depsgraph
So I want to know: Is it user error to use a mesh with shapekeys in Multires, especially a mess of broken shapekeys caused by editing the mesh/topology?
Or should Blender support even this case?
please @ me
This bug does not seem to occur if none of the shapekeys are enabled/ if their influence is set to 0.

My Observations:
It doesn't seem to matter what kind of shape keys are present- weird results will occur. The weirder the shape-key, however, the weirder the result.
After playing around with it, it even seems like causing a depsgraph update (in this case, by changing frame) simply causes Multires to add the shapekey's displacement to the current sculpt level. I do not know why undo is necesary to create the bug. Perhaps it is creates an outdated depsgraph? This doesn't seem to be related to the new undo system; I was able to get the bug with "Undo Legacy" enabled. I have not, however, tested this in older versions of Blender. I would be happy to do so.

I think the explosions that occur are not so much the product of bad shape-key handling, but rather, editing shapekeys in destructive ways is a good way of producing bad geometry that confuses multi-res. Have I found two bugs, then?

maybe related? T76769 T76313

Event Timeline

Richard Antalik (ISS) changed the task status from Needs Triage to Confirmed.Tue, May 19, 10:09 AM

I can confirm this.

Here is example file, but you have to sculpt twice now to cause this bug. Not sure if this is best example file - it's very lazy version.