When setting up a (parent) constraint that is only meant to freeze an object to the world and otherwise return it to it's original location (i.e. back to the hand), doing so with 0 sources (as there's really no need for any sources) will cause the object to be offset instead of snap back, this behavior is gone if any source is added, even if the source/constraint weight is 0. Repro: Add a parent constraint to an object that's placed on the hand, leave it with 0 sources Activate "Freeze to world" Move away from the object Disable "Freeze to world" Observe the object being unfrozen, but offset Adding any source (with a transform) fixes this, regardless of weights. Update: It appears to work in editor with 1 source but a weight set to 0 (so it's there but not used), but in game offsets are almost always still baked, which makes this even weirder. Update 2: It works in game too, but if the object containing the constraint is off, and by a toggle it is turned on and at the same time turns "Freeze to world" off, but 1 frame later turns it on (2 keyframes), it seems not to function for some reason, but extending the animation so it's not 1 frame long and is instead 2 frames, with the 2nd keyframe duplicated (keyframe 0 = object on, freeze off, keyframe 1 and 2 = object on, freeze on) makes it work, I'm very confused as to why that makes a difference, it does not work if "keyframe 1" (the "middle" keyframe) is removed.