Apply scale/location deforms mesh I'm a total beginner with Blender.
When importing my model to Unity3D, the rotation and the location of the body of the model is wrong.

I think I have to apply scale/location, but when I do that, the second I move the frame bar, the mesh deforms itself on Blender, and the location also changes back to some random numbers instead of staying at 0. When applying scale, the object goes super small (which seems quite strange).

After doing some research, it seems I should have applied scale/location/rotation before starting to animate (ups!). Is there any way I can unparent, apply scale/loc and then reparent while keeping the animation intact?

after applying location:


after applying scale:








EDIT: finally solved the whole import to Unity3D thing by rigging the whole thing again, weight painting and animating while paying attention to all the points moonboots mentioned. Writing this for future reference: I think the key was re-rigging. Somehow Unity3D was understanding one of the main tentacle bones as the root node and that's why it was rotated in such a strange way (just like that specific tentacle bone).
Select the mesh only, open the Dopesheet, switch to Action Editor mode, click on Only Include Channels Relating to Selected Objects option, you can see that you've given your mesh an action called "Action". This action includes X, Y and Z scales that influence the scale of your mesh, and if you applied the scale it made your mesh smaller. You should not give any action to your mesh, only to the armature that controls this mesh, so just click on the X button to close this action. Also you should join the tentacle bones to the root bone to make it simpler.