It seems that there is a problem when exporting a mesh with modifiers and shape keys. It works when the modifers are applied before, but I don´t want to make all the shape keys again, Is there any solution to this problem? It seems that there is a problem when exporting a mesh with modifiers and shape keys. It works when the modifers are applied before, but I don´t want to make all the shape keys again, Is there any solution to this problem??
1 Answer
Blender is mostly incapable of applying modifiers to meshes with shapekeys. (It will let you apply "modify" type modifiers, like a data transfer, but not generate, deform, or physics type.) There are some situations where doing so wouldn't make any sense-- a mirror modifier (with merge) might generate meshes with different numbers of vertices for each shapekey, for example, which couldn't really be shapekeys of each other.
However, there are plenty of situations where a modifier could be applied to shapekeys, as long as you're reasonably careful about what you're doing. Because Blender doesn't have this functionality built-in, you need to apply the modifiers yourself rather than rely on your export to do it for you.
In previous versions of Blender, Shapekey Helpers addon ( https://github.com/JanOtt/ShapeKey-Helpers ) was useful for this-- although to my memory, it would occasionally poop out sometimes on things that should have worked. If you're using an older version of Blender, you could consider trying to apply your modifiers with that addon.
I'm unaware of any similar addons that are up-to-date with current releases of Blender, but you could look. It's a likely thing for people to want to automate.
You can do it without an addon, although the process is more tedious. For each shapekey, you make a copy of the mesh with that shapekey set as its basis (by deleting all other shapekeys, then that particular shapekey), then apply all modifiers. When you have done this for all shapes, including Basis, you then join all other shapes to Basis using "join as shapes" operation from the shapekeys dropdown. Finally, you'll have to rename your shapekeys.
This process could be cleanly scripted; that's essentially what Shapekey Helpers addon was.
It could probably be streamlined somewhat via Geometry Nodes to simply instance copies of your geometry, and then apply that single modifier: this would mean that you don't have to delete shapekeys a million times, or worry about things like a corrective smooth set to original coordinates, which won't apply properly. However, I haven't tested GN for this purpose, and there may be some complications.