Godot Version
4.6
Question
Hi everyone,
I’m working on FPS weapon animations for my Godot project and running into issues with my workflow. I’d appreciate any advice from people who’ve done this before!
My Setup:
-
Blender 4.4.3 / Godot 4.6
-
Multiple weapons (AK-47, Pistol, Scar, Sniper, etc.)
-
Each weapon has 2 separate armatures:
-
Arms_Rig(FPS arms with bones: root, upper_arm_L/R, Hand_Ctrl_L/R, fingers, etc.) -
Armature_Weapon(weapon-specific bones: body, magazine, bolt, grip, safety, etc.)
-
-
The weapon armature is parented to
Hand_Ctrl_Rbone (right hand) -
Left hand (
Hand_Ctrl_L) uses 3 Child Of constraints to switch between:-
Grip (Influence 1.0 for idle/fire)
-
Magazine (Influence 1.0 during reload)
-
Bolt (Influence 1.0 when chambering)
-
My Problem: When I create multiple animations (idle, reload, fire, bolt), they sometimes “bleed” into each other. For example:
-
After animating reload, the magazine position gets messed up in the idle animation
-
Constraint influences from one animation affect others
What I’ve Tried:
-
Keyframing all bones at frame 1 and last frame of each animation
-
Keyframing constraint influences in each animation
-
Using NLA Editor with “Push Down Action” to isolate animations
-
Exporting with “Bake Animation” enabled
My Questions:
-
Is using 2 separate armatures a good approach, or should I merge them into one?
-
What’s the proper export settings for glTF with multiple armatures and constraints?
-
Should I use NLA tracks or just export individual actions?
-
Any tips for preventing animation “pollution” between actions?
Export Settings I’m Using:
- Format: glTF 2.0 (.glb)
- Include: Selected Objects (both armatures + meshes)
- Animation: ✓ Enabled
- Group by NLA Track: ✓ Enabled
- Bake Animation: ✓ Enabled
- Export Deformation Bones Only: ✓ Enabled
Has anyone successfully implemented a similar system? What workflow worked best for you?
Thanks in advance for any help!