Maniphest T59824

Multi-resolution modifier does not save data when btx file and mesh do not match face/vertex count
Closed, Resolved

Assigned To
Sergey Sharybin (sergey)
Authored By
LapisSea (LapisSea)
Dec 24 2018, 8:11 PM
Tags
  • BF Blender
  • BF Blender: 2.8
Subscribers
Chuck Ocheret (smart61)
LapisSea (LapisSea)
Martin Capitanio (capnm)
Sebastian Parborg (zeddb)

Description

System Information
Operating system: Windows 10
Graphics card: GTX 970

Blender Version
Broken: daily build - December 24, e5e885d0ecb9, 2.8

Short description of error

When using multi resolution with external btx file, any changes are not saved if the btx poly count and actual mesh poly count is not equal. (even if only change was adding geometry)

Note:
If poly count mismatch occurs happens a warning in modifier should be displayed
Can be fixed by packing, deleting/renaming/moving original and again saving externally

Exact steps for others to reproduce the error

  1. Add multi-resolution modifier with LOD of choice
  2. Go in to sculpt and sculpt anything
  3. Exit sculpt mode
  4. Save file and pack external
  5. Exit blender
  6. Reopen file
  7. Go to edit mode and add any geometry (such as a disconnected plane for simplicity)
  8. Go in to sculpt and sculpt anything
  9. save and reopen file

Related Objects

Mentioned In
T60163: Multires modifier not always updating external data files when .blend is saved causing changes to be lost
Mentioned Here
rBf15a5440a1e1: Multires reshape: correct grids level allocation
rBe5e885d0ecb9: Fix floating panel (HUD) applying DPI incorrectly

Event Timeline

LapisSea (LapisSea) created this task.Dec 24 2018, 8:11 PM
Sebastian Parborg (zeddb) assigned this task to Sergey Sharybin (sergey).Jan 24 2019, 12:42 PM
Sebastian Parborg (zeddb) lowered the priority of this task from 90 to 50.
Sebastian Parborg (zeddb) added a subscriber: Sebastian Parborg (zeddb).

I'm getting an assert with my debug build when I add a new plane:
BLI_assert failed: /home/zed/programmering/blender_master/blender/source/blender/blenkernel/intern/multires_reshape.c:249, multires_reshape_vertex_from_final_data(), at 'grid_paint_mask->level == displacement_grid->level'

So I guess that we already know that the mismatch happens.
Without that assert, I can confirm that the sculpting data is not saved on the plane.

Sergey Sharybin (sergey) added a comment.Jan 24 2019, 1:31 PM

Did this work in 2.79b?

Sebastian Parborg (zeddb) added a comment.EditedJan 24 2019, 2:14 PM

@Sergey Sharybin (sergey) seems to work for me in 2.79 (blender2.7 branch)

Sergey Sharybin (sergey) added a comment.Jan 24 2019, 2:25 PM

@Sebastian Parborg (zeddb), getting a bit tricky to follow steps here. Mind testing with rBf15a5440a1e and if the issue still happens provide some basic .blend file and steps for me?

Sebastian Parborg (zeddb) changed the task status from Unknown Status to Resolved.Jan 24 2019, 3:06 PM

@Sergey Sharybin (sergey) That seems to have solved it for me!

Sergey Sharybin (sergey) added a comment.Jan 24 2019, 3:16 PM

@LapisSea (LapisSea), the fix will be in the next nightly build. Feel free to poke us here to let us know whether the issue is still happening or resolved.

LapisSea (LapisSea) added a comment.Jan 24 2019, 3:20 PM

Thank you! I will be building locally as soon as the commit comes out.

Sebastian Parborg (zeddb) added subscribers: Chuck Ocheret (smart61), Martin Capitanio (capnm).