Please login or register.

Login with username, password and session length
Advanced search  

News:

For WME related articles and tutorials visit WME Resource Center.

Author Topic: Problem with walking animation  (Read 14231 times)

0 Members and 1 Guest are viewing this topic.

Derrek3D

  • Occasional poster
  • **
  • Karma: 0
  • Offline Offline
  • Posts: 82
    • View Profile
Problem with walking animation
« on: November 25, 2007, 10:20:57 AM »

Hello,

I have a problem with the walking animation of my 3D actor. Every time he starts walking, he starts moving immediately but he does so without the walking animation. Only a bit later the walking animation kicks in. I think the problem is that he starts moving while the engine is making the transition between the idle animation and the walking animation. I tried to shorten the transition time between these two animations and although the "gliding" effect lessened a bit, the transition between the idle state and the walking state is now too abrupt and looks really bad (I mean, that's what the transition is for, after all).

What is the correct way to deal with this situation? Is there a way to cause the actor to start his actual moving only after the walking animation is actually playing and not during the transition?
Logged

sychron

  • Wanderer zwischen den Welten
  • Global Moderator
  • Regular poster
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 223
  • There is no spoon. The enemy gate is down!
    • View Profile
Re: Problem with walking animation
« Reply #1 on: November 25, 2007, 02:10:52 PM »

I had this problem once. Make shure your walking animations starts with a step-frame, not with a stand-frame. Normally, two stand-Frames appear inside a walking animation, make sure it ENDS with this frame.
Otherwise, the first animation picture played back is a stand frame, which may cause your trouble.
Logged
... delete the inner sleep ...

Derrek3D

  • Occasional poster
  • **
  • Karma: 0
  • Offline Offline
  • Posts: 82
    • View Profile
Re: Problem with walking animation
« Reply #2 on: November 25, 2007, 03:15:20 PM »

The first frame of my walking animation is the actor with one of his legs slightly lifted and a bent knee. Is this a problem, you think? What do you mean by step-frame as the first frame? Should the first frame be the one with one leg fully outstretched in a full step motion?

Now regarding the stand-frames that you mentioned, I'm a bit confused. How can such frames exist at all in a walking animation? I mean, this animation is a loop and in a walking loop no frame at all should be a stand-frame. Do you mind explaining what you meant?
Logged

sychron

  • Wanderer zwischen den Welten
  • Global Moderator
  • Regular poster
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 223
  • There is no spoon. The enemy gate is down!
    • View Profile
Re: Problem with walking animation
« Reply #3 on: November 25, 2007, 08:14:34 PM »

Depending on the character, they can be used for the "passing phase", perhaps for tentacle movement, if you remember MM.
Logged
... delete the inner sleep ...

Derrek3D

  • Occasional poster
  • **
  • Karma: 0
  • Offline Offline
  • Posts: 82
    • View Profile
Re: Problem with walking animation
« Reply #4 on: November 26, 2007, 02:35:43 PM »

Hmmm... I can't say I understand... and I don't really remember how the tentacle used to move in MM, it's been a long time since DOTT... What is a "passing phase"? And is there really a place for stand-frames in a normal human being's walking cycle?

What about my main question though? Should the first frame in a walking loop be the one with one leg fully outstretched in a full step motion?
« Last Edit: November 26, 2007, 04:09:53 PM by Derrek3D »
Logged

Mnemonic

  • WME developer
  • Administrator
  • Addicted to WME forum
  • *
  • Karma: 41
  • Offline Offline
  • Gender: Male
  • Posts: 5683
    • View Profile
    • Dead:Code Site
Re: Problem with walking animation
« Reply #5 on: November 26, 2007, 03:38:59 PM »

What about my main question though? Should the first frame in a walking loop be the one with one leg fully outstretched in a full step motion?
It depends on you, really. What you think will look better in your case.

As for the abrupt change, what transition time are you using now? The default value is half a second, if I remember correctly, which looks a like reasonable time to me, not too abrupt and not too lengthy. To answer your original question, the actor always starts moving immediately as the transition starts.
Logged
Yes, I do have a twitter account
Please don't send me technical questions in private messages, use the forum. ::wave

Derrek3D

  • Occasional poster
  • **
  • Karma: 0
  • Offline Offline
  • Posts: 82
    • View Profile
Re: Problem with walking animation
« Reply #6 on: November 26, 2007, 05:02:12 PM »

It depends on you, really. What you think will look better in your case.
Well, it's not a matter of taste here, I think. The context of my question was preventing the "gliding" effect whenever the actor starts walking. So I wanted to know if this effect will disappear or otherwise significantly lessen if the first frame would be one leg fully outstretched in a full step motion.

As for the transition time, I think the default value is pretty much ok. I just played with it to see if I can solve my "gliding" problem with it. As it turned out, my actor stopped "gliding" and started walking immediately when I used a value as low as 50ms but as I mentioned before, it looked bad with such a low value.

Bottom line, if you tell me you think starting the walking animation with a full-step frame would solve the problem, I'll have to talk to the animators and ask to modify the animation itself.
Logged

Mnemonic

  • WME developer
  • Administrator
  • Addicted to WME forum
  • *
  • Karma: 41
  • Offline Offline
  • Gender: Male
  • Posts: 5683
    • View Profile
    • Dead:Code Site
Re: Problem with walking animation
« Reply #7 on: November 27, 2007, 06:04:41 PM »

I can't tell. These are the facts: once the actor starts walking, it does the transition from idle to the first frame of the walk animation and at the same time it starts moving. Whether the transition goes from idle to the fully outstretched pose or not IS a matter of taste, IMO.
Logged
Yes, I do have a twitter account
Please don't send me technical questions in private messages, use the forum. ::wave

Derrek3D

  • Occasional poster
  • **
  • Karma: 0
  • Offline Offline
  • Posts: 82
    • View Profile
Re: Problem with walking animation
« Reply #8 on: November 28, 2007, 11:24:46 AM »

Well, I don't know how else to ask this... This thread is not about choosing the prettiest walking animation. If it were, it would have been a matter of taste, of course. This thread, however, is about overcoming a real problem which has nothing to do with personal tastes. If the actor always starts his walking by gliding, then it's a problem and by no means a matter taste. Gliding instead of walking is a problem no matter who looks at it.

All I wanted is a good advice from the people around here that are using 3D actors and that can easily take a look at the first frame of their actor's walking animation. There are quite a few people around here that can provide such an answer...
Logged

redfox

  • Regular poster
  • ***
  • Karma: 1
  • Offline Offline
  • Posts: 122
    • View Profile
Re: Problem with walking animation
« Reply #9 on: December 05, 2007, 04:16:03 PM »

Hello,

I've noticed that no matter what stance the walk animation begins with, if the anim transition time is too large, then my main character glides before the walking animation has triggered.  Could it simply be that this is the cause?

What is the default Anim Transition Time for an actor if it not specifically coded?

Is there a way to specify a different Anim Transition Time for the walk only and not other animations? I though I could change the time on the first frame event of the walk, but that will only trigger once the actor has already transitioned?
Logged

Mnemonic

  • WME developer
  • Administrator
  • Addicted to WME forum
  • *
  • Karma: 41
  • Offline Offline
  • Gender: Male
  • Posts: 5683
    • View Profile
    • Dead:Code Site
Re: Problem with walking animation
« Reply #10 on: December 06, 2007, 04:02:20 PM »

The default transition is actor.AnimTransitionTime.  And you can change transition between specific animations using actor.SetAnimTransitionTime(), e.g. transition from "idle" to "walk".
Logged
Yes, I do have a twitter account
Please don't send me technical questions in private messages, use the forum. ::wave

bupaje

  • Lurker
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 5
    • View Profile
Re: Problem with walking animation
« Reply #11 on: December 09, 2007, 02:43:29 AM »

Hi. I am totally new here - just finished the first tutorial- but it did seem to me -on the 3d game demo at least-  that part of the problem might also be that the lead leg in the standing still position is also the leg taking the first step. For example the left leg is forward and then when the actor moves the left leg -which is already forward- is taking a step which is partially responsible for the glide. The opposite leg should take the first step. It may be that the first frame of the step animation should be what is called the passing position in a walk cycle with the leg that is forward in the standing still position being the contact leg.
« Last Edit: December 09, 2007, 02:47:53 AM by bupaje »
Logged

Jyujinkai

  • Global Moderator
  • Frequent poster
  • *
  • Karma: 1
  • Offline Offline
  • Posts: 352
    • View Profile
    • Jyujinkai's WME Development Blog
Re: Problem with walking animation
« Reply #12 on: December 09, 2007, 03:44:08 AM »

The transition of the walk cycle is your problem here. The trick is to have the transition use as little movement of the mesh as possible so the "slide" is less notable.

Lets take a quick look at a walk cycle taken from http://www.idleworm.com awsome 2d walk cycle animation tutorial.


And here is a stand frame... imagine it is a idle look or w/e.


Now even before you start fiddling with all the animation controls in WME... there is a few things you can do in the animation itself to minimize drag. Now for this example i am using "RECOIL" but in fact you want to use "PASSING" it is just that it is easyer to see my point on "RECOIL"

The 3D data in WME (and most other places) is taken as a start point from your pivot upon the unanimated mesh in world space. Now most people will place this pivot in the center middle of the mesh, but on the ground plane. BAD IDEA. This is where you normaly put it for rendering animation withc is why almost all 3D tutorials will tell you tp put it there... but in a game like WME it is using the MESH itself not just the rendered look of each frame.

Move this pivot back under the line of one of the legs, leaving the mesh itself at 0,0,0. (so JUST move the pivot). Now look at your animation cycle. each walk/run cycle will have a cross over frame where the one of the legs is hardly moved from the start position, mabey a little bit but not much... most likely just a bent leg like in the picture.

Now the walk cycle will just loop though your animation... so once you are moving everything is cool. The trick here is to make as little movement to get to the first frame of the loop as possible. (remeber you need to use "PASSING" not teh one i used .. i just used that to make it clear)



See in this image.. when you transition form the idle cycle to the start of the walk cycle with the pivot point in the middle... you get a noticeable slide as both the back, front legs, and arms are "sliding" both backward and forward on the spot. So the body itself is standing still while the legs and arms move left and right to get into position.

With the pivot itself on the base mesh in the correct place. The only movement needed to move the mesh from idle into walking is a slight bend of the knee, and the front leg moving forward as well as the body moving forward. So in fact you have turns the "slide" into a step off animation transition, that then blends directly into the loop cycle. So now the "slide" is a feature that give you a nice looking "step off"


Hope this help.
Logged
<Antoine de Saint-Exupéry> In any thing at all, perfection is finally attained not when there is no longer anything to add, but when there is no longer anything to take away...
<Carl Sagan> If you want to make a apple pie from scratch. You must first... invent the universe

redfox

  • Regular poster
  • ***
  • Karma: 1
  • Offline Offline
  • Posts: 122
    • View Profile
Re: Problem with walking animation
« Reply #13 on: December 13, 2007, 02:52:21 PM »

And you can change transition between specific animations using actor.SetAnimTransitionTime(), e.g. transition from "idle" to "walk".

Perfect, this is just what I needed to smooth my own animations for walking. Thanks for pointing it out, I had missed it.
Logged
 

Page created in 0.035 seconds with 20 queries.