Walkcycle and Character Movement Concept

  • #1, by gustyTuesday, 01. December 2015, 22:37 9 years ago
    Marvel wrote:
    Please create new thread, name it "Walkcycle and Character Movement Concept 4 Visionaire", discuss it, find a solution that is fine for everybody and create a detailed visual design concept. Then send it to our hands.


    At first, I believe that VS devs should at first implement something like provisional or "very simple" solution of character rotation and then over time build upon that - improving it. That is what development in general is about, right? It is not about figuring out the most brilliant solution over span of two months. It's about slow, diligent process of making things better. So in the case of character turning, I believe we should focus on the most simple solution at first.
    Let's make something clear - forget about "absolute realistic character turning". I studied classical animation and human anatomy for over than 3 years and I'm telling you - it's not possible to make it absolutely real. So I'm saying - let's fake it right from the beginning. Let's make it more of the suggestion of fluent and smooth movement than the "real" thing. Right now the problem is that there isn't any character turning at all in VS - not bad as in AGS, not average, not any. That is the main problem. I think we should focus on what illusionists and magicians are using - to trick the human eye and human brain. Yes, we could approach the problem like hardcore scientist - but we could also fake it and make it look reasonably good and real. Clean and easy solution, that is what I'm suggesting.

    Focus on 2D or 3D characters? Or both?
    As 3D artist myself, I think VS devs should focus on 2D characters only. I believe it would be wise to make 2D characters in VS possibly the best it can be and then, maybe, focus on 3D support.
    For Akcay Karaazmak who is only one (as I know) currently developing realtime 3D game (or we should say 2.5D - 3D characters on 2D backgrounds), there is a very simple solution - which I'm also currently using as I'm also working with 3D. And it's rendering out the 3D characters into bitmaps. This is very dynamical solution as you can determine everything you want for your output graphics - how many frames animations have, how big are the bitmaps (resolution) etc.

    So that is the first thing I'm suggesting - stop the development of 3D characters for VS and focus on 2D characters only. Make 2D characters nice, reasonably smooth and strong, then maybe over time, start implementing 3D support. As I said before, 3D artists can use 2D renders, so there isn't really need to have realtime 3D. You may ask - but what about realtime shadows of real 3D? I'm saying - screw that. If you want perfectly realistic shadows, you would also need complete 3D environment - it's like the situation when shadow of 3D character is casted on 2D bitmap of table - it won't work, you would also need 3D model of table to correctly project character's shadow on this table. So we would need complete 3D: 3D characters on 3D environments. Impossible right now, I think.

    So my question for other users and VS devs is: do we really need real time 3D characters at all?


    Now I will react on some great things that AFRLme suggested in previous thread:

    having the character rotate from current direction to next direction using the amount of directions you have, but it won't look very nice. For smooth rotation you need more frames than simply cycling through the 8 directions your characters probably have.


    Well, turning feature would be mainly for 3D artist out here, right? Like Marvel said - it's more suitable for realistic adventure games. So in that case, as I'm using 3D myself, I can render out 360 directions very easily. No problem at all. The question is - what about VS memory/graphic card overwhelm? As I said, I can generate graphics for 360 directions with 200 frames of animations per one direction. Piece of cake. But that is a lot of data I'm afraid. So I would suggest something like 36 directions? But one thing is certain - it would look better with 8 directions then it looks now smile

    Then there's the matter of begin rotation animation > actual rotation > end rotation animation.


    OK, there are two main situations:
    a) character is standing still - then player clicks on the spot - let say - behind the character so character have to turn at first, then he walks. In that case, I would use "rotation animation" and then simple walking animation.

    b) character is walking - player clicks on some spot WHILE characters is walking. In case of angle<90 degrees I wouldn't use "rotation animation" at all. Character would just walk in some kind of curve. It would be like "turning without turning". Please see this video (0:07-0:09)

    the most smoothest method I can think of..

    As I said before, I'm suggesting to focus on "most simple method that looks relatively good".

    Forum Fan

    159 Posts


  • #2, by afrlmeTuesday, 01. December 2015, 23:34 9 years ago
    Pure animation = key. Simples! smile

    You wouldn't need all 360 frames. As you said, you could simplify the rotation down to 36 frames or maybe even less. Take the 8 directions & add 2 frames to make the actual turn 15 degrees per frame instead of 45 degrees. That´s what 24 frames? Got to be better than 8 no?

    My solution with pure animation would be approx 4 to 8 frames.

    1. lift up left or right foot slightly based on rotation direction.

    2. begin twisting body & feet towards rotation direction

    3. cycle through the final frame used in (2) for each direction until reach target direction.

    4. reverse steps 2 & 1 until back to idle (if no destination set) or straight from 1 to walk if destination is set.

    My method requires Lua script to force the frames. Alternative would be as I mentioned in the other thread. Pure animation. Multiple animations for each direction to be triggered as needed.

    Imperator

    7285 Posts

  • #3, by gustyWednesday, 02. December 2015, 00:14 9 years ago
    lifting up left/right foot and twisting pelvis = maybe "too complicated" ?? smile

    ok, here you have Grim Fandango game - as you know, it has keyboard-based controls. So if you have played the game, you know that you can turn your character all around on the spot with your arrow keys. And I believe it is just walking animation on the spot (character is standing and "marching" as he is turning but he is not moving back and forth). Maybe we could start even that simply? Because I always thought that Grim Fandango animations are pretty good. Simple and elegant.

    As I said - human eye doesn't pay attention that much. We just need SOME movement when the character turns. It hasn't to be psychically correct movement. We just need SOME interpolation when character turns. Just SOME slight movement. So maybe we can fake it just with walking animations..?

    Forum Fan

    159 Posts

  • #4, by marvelWednesday, 02. December 2015, 00:25 9 years ago
    Just 2 Cents: A simple character turn is already possible in Visionaire. I already have it in Oak Island and it's actually not a problem at all. Just use Simon's script for that.

    THIS thread should work on a more professional solution. I'm longing for the best solution possible considering that it is EASY (no lua) BUT FLEXIBLE- so please focus on that wink I'm curious.

    Last thing: Please post visual concepts. It's pretty hard to read and understand the long novels you are always writing. shock We don't have much time for that. So please please please keep it short, visual and focus on the most important things...

    Key Killer

    599 Posts

  • #5, by afrlmeWednesday, 02. December 2015, 00:44 9 years ago
    So please please please keep it short, visual and focus on the most important things...


    & for those of us that are artistically challenged?

    Imperator

    7285 Posts

  • #6, by marvelWednesday, 02. December 2015, 00:46 9 years ago
    If you're not creative at all and cannot create a simple visual concept - go and leave this discussion board wink

    Give us pictures here. Give us screenshots showing the editor with your ideas and improvements. You can do it. If not, go and ask someone, who indeed can do it. grin

    Key Killer

    599 Posts

  • #7, by gustyWednesday, 02. December 2015, 01:58 9 years ago
    OK I'll use Eadweard Muybridge's photo as reference here and I'll try to apply AFRLme's theory.
    Open up this image.
    In down left corner of every thumbnail you can see little black number.

    Situation: Character is walking when player clicks on some spot on location floor.

    Solution: In one specific frame (let's call it "frame X") of walking we break the walkcycle and follow up with new set of animation which is "turning animation set".

    We let the character walks until he reachs our specific transition "frame X".

    pictures (1) and (2) shows regular walkcycle

    picture (3) shows last frame of walkcycle we are using - "frame X"

    now we tie up with turning animation

    picture (4) is first frame of "turning animation set" - right foot is lifted up and body is starting to twist

    picture (5) - body is twisted even more and feet goes towards rotation direction


    We can use exactly same "turning animation set" in the situation when character is standing still and starts to walk (picture 4 is first frame). Of course we need two sets of this animation - for turning left and for turning right.

    Forum Fan

    159 Posts

  • #8, by MachtnixWednesday, 02. December 2015, 01:59 9 years ago
    To make a convincing turn you need to edit the first and last frames of standing and moving animation, I think. Is that possible without Lua? The only thing you can do in Vis is to create more than 8 direction angles and make the character use them smoothly one after another like Cleopatra on her magnificence litter visiting Caesar.

    The difficult problem is to predict where the gamer wants to send the person and avoid something like "gimbal lock". Maybe you need a "personal animation" with this turn frames between the stop- and the move-loop. If I try this I would make a turntable with - maybe - 24, 36 or 360 degree prerendered positions. All what to do is to start from stop-position up to the frame next to the direction you want. But it will be a turning at one point, not very realistic...
    I am a 3D-artist too and a real turn is not that simple.

    Machtnix

    Thread Captain

    1097 Posts

  • #9, by JoelWednesday, 02. December 2015, 09:39 9 years ago
    Not to compare or anything, but the guy who develops the new Adventure Game Engine, Sylvain Seccia, implemented a simple Character Turn in half a day after it was requested for the first time. Of course it's just the usual "show the front view before the Character changes sides" but maybe that's all it really needs... For me personally, it's not a feature i really REALLY need but it would be a nice addition of coursewink But i still think Visionaire is the easiest to use Adventure Engine out there, so i got the choice between having more of a headache completing a game with character turns or just completing a game. Needless to say, i'm more in favour towards the latter.

    Forum Fan

    129 Posts

  • #10, by marvelWednesday, 02. December 2015, 10:59 9 years ago
    ...a simple Character Turn


    Please read what I wrote above. There is already a solution for a simple character turn wink It was created months ago and there is even a demo available here:

    http://www.visionaire-studio.net/forum/thread/smooth-charact...

    Let's discuss here about the more professional look and how this could be implemented.

    Key Killer

    599 Posts

  • #11, by JoelWednesday, 02. December 2015, 11:27 9 years ago
    Whoops, you're quite right. Well i think that should do until a more advanced function is implemented wink

    Forum Fan

    129 Posts