We have discovered what we consider to be a critical bug in handling UVs in 4R4.
Previously we have developed the following workflow:
- import model in obj format to zbrush
- store morph target, turn SmoothUV on
- divide model and sculpt
- for extracting normal maps, use level 2 or level 3 of the model
- for extracting displacement maps, go back to level 1, and restore morph target
This has produced consistent and good results.
Our reason was that after first using Divide, the level 1 mesh has also been altered and lost significant volume.
Back in 2004 when we first used Zbrush, it was Pixologic’s suggestion to keep the original state of the model as a morph target.
In 4R4, however, we have experienced the following:
- using Divide will not only change the shape of the level 1 mesh, but it will also change the original UVs of the base mesh, applying some sort of slight relaxation to the UVs inside the borders
- restoring the morph target will not restore the original UVs
The consequence is that if we have painted textures in an other application using the original UVs, then the color/spec/other maps and the zbrush generated displacement maps will not match each other. This is a significant issue.
This issue was not present in previous versions of Zbrush as far as we know.
It is possible to manually fix the issue to some extent; instead of simply restoring the morph target, we also need to re-import the original OBJ version with the original UVs before generating the maps. This however is not a reliable fix, and we are still investigating if it can fix our workflow for normal maps (we don’t yet know if Zbrush will propagate the original UVs to the higher levels).
We are looking forward to Pixologic’s response on this issue.