Describe the bug
If a shape key is set to be Relative To a non-Basis shape key, turning it on should only apply the deformation that would go from the Relative To shape key to itself. See below for a visual example.
Exporting to .gltf doesn't preserve this behavior.
To Reproduce
Steps to reproduce the behavior:
These are probably excessively detailed!
Delete the camera and light (they're just clutter)
Add a Basis shape key to the cube
Add another shape key, Key 1, and, with it selected, go into Edit Mode and raise the top face of the cube
Go back into Object Mode.
Set the influence of Key 1 to 1. The top of the cube should rise
Click New Shape from Mix to create a new shape key, Key 2
Set the influence of Key 2 to 1. Note how this further raises the cube's top face.
Set the Relative To property of Key 2 to Key 1. The cube should now go back to how it looked at step 6.
Go into Edit Mode and pull out one of the side faces of the cube.
At this point, turning on Key 1 but not Key 2 should raise the top of the cube, turning on Key 2 but not Key 1 should move the side of the cube, and turning on both should raise the top and the side of the cube.
Export this cube as an .fbx and as a .glb/.gltf (same behavior with both options).
Import the .fbx file
Try turning on Key 1 and Key 2. They should behave exactly as they did on the cube you just created.
Import the .glb file
Try turning on Key 2. The cube's top and side will both move.
Expected behaviorKey 2 should only make the cube's side move. This should mirror the behavior of the FBX exporter, which modifies the shape keys so that they keep working properly.
Screenshots
From left to right: Both keys off, Key 1 on, Key 2 on, both keys on. Key 2 is marked as relative to Key 1.
Expected behavior:
GLTF behavior:
.blend file/ .gltf
Here's the original .blend file, plus the resulting FBX and GLTF files.
Describe the bug If a shape key is set to be Relative To a non-Basis shape key, turning it on should only apply the deformation that would go from the Relative To shape key to itself. See below for a visual example.
Exporting to .gltf doesn't preserve this behavior.
To Reproduce Steps to reproduce the behavior:
These are probably excessively detailed!
At this point, turning on Key 1 but not Key 2 should raise the top of the cube, turning on Key 2 but not Key 1 should move the side of the cube, and turning on both should raise the top and the side of the cube.
Expected behavior Key 2 should only make the cube's side move. This should mirror the behavior of the FBX exporter, which modifies the shape keys so that they keep working properly.
Screenshots
From left to right: Both keys off, Key 1 on, Key 2 on, both keys on. Key 2 is marked as relative to Key 1.
Expected behavior:
GLTF behavior:
.blend file/ .gltf Here's the original .blend file, plus the resulting FBX and GLTF files.
shape-key-bug.zip
Version
Additional context The FBX exporter doesn't actually preserve the Relative To property, since I don't think that concept exists outside of Blender.