0
$\begingroup$

I'm trying to animate a simple attack animation for my 3D character, but I can't seem to get the weapon to stay where I put it. I've tried saving the location, rotation and scale using Ctrl + A, keying the frame, moving the arm back for the recoil, saving the keyframes, moving the weapon back with it, applying the rotation, location and scale, and adding the keyframe. However, the weapon just goes back to the centre of the grid, looking like the chaeacter is standing on it.

What am I doing wrong here? How can I sort this out?

enter image description here

Thanks

$\endgroup$
18
  • $\begingroup$ you've given your object an animation, so it obeys. In the Dopesheet press the Only Include Channels button (arrow), select the weapon, remove the attached action you see with the X button. $\endgroup$
    – moonboots
    Apr 29, 2019 at 13:15
  • $\begingroup$ I only see LocRotScale at the bottom, but it only has 1 keyframe. If I add another one, it messes up the character or the placement of the character or weapon. I've selected Only Include Channels. $\endgroup$ Apr 29, 2019 at 13:21
  • $\begingroup$ LocRotScale means you have created an animation that also influence the LocRotScale of the object, so if you give this animation to either a cube or an armature it will influence their LocRotScale, so select the weapon and close the animation with X $\endgroup$
    – moonboots
    Apr 29, 2019 at 13:25
  • $\begingroup$ you must have created this animation for your armature and given it to the weapon by mistake. What do you want to do with this weapon exactly? If you want it to follow the hand, you should parent it to the hand bone, something like that... $\endgroup$
    – moonboots
    Apr 29, 2019 at 13:26
  • $\begingroup$ I take it you mean the animation in the NLA...? There's nothing in the Dopesheet from what I can see. $\endgroup$ Apr 29, 2019 at 13:28

1 Answer 1

2
$\begingroup$

In the Dopesheet press the Only Include Channels button (arrow icon, allows to only see the keyframes of the selected object), select the weapon, you'll see if your object has an action assigned. You've given your gun an action called "Action", this action has bones keyframes, so I guess it is supposed to be used by your armature, not your gun. And this action also has LocRotScale keyframes, your gun will be affected by those LocRotScale. It makes no sense to use such an action, don't give any action to your gun (except for example propelling a bullet), your gun should rather follow the hand of your armature. So in the Dopesheet remove the action with the X button on the right of its name (Unlink this Action). Now your gun is free from any action. Now parent it to the hand bone, so that it will be moved by the hand, it's much more logical.

$\endgroup$
17
  • $\begingroup$ I'm afraid I'm not seeing that option. I go to the Dopesheet, select the weapon object, but no object shows. If I select the hand holding the gun, the only options I see are the quaternion rotations and scales etc. $\endgroup$ Apr 29, 2019 at 14:54
  • $\begingroup$ what option can't you see? no object show: what are you talking about? please follow exactly what I say, if you enable the Only Include Channel option in the Dopesheet and select an object you'll see if there is an action that has been assigned to it, if I open your file I can see that the action called Action has been assigned to your gun, which makes no sense, as I suppose Action is supposed to be assigned to your armature. You need to understand that you can create an animation for an object and assign it to any other object in your scene. $\endgroup$
    – moonboots
    Apr 29, 2019 at 15:01
  • $\begingroup$ Of course your gun doesn't have any bone so it won't take account of the bone keyframes but Action also have LocRotScale keyframes, so your gun is affected by those... $\endgroup$
    – moonboots
    Apr 29, 2019 at 15:01
  • $\begingroup$ I'll upload the latest save file I have. $\endgroup$ Apr 29, 2019 at 15:10
  • 1
    $\begingroup$ create an action for the bullet itself and use the NLA to start it whenever you want $\endgroup$
    – moonboots
    Apr 30, 2019 at 10:03

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .