Character Controller Usefulness

Character Controller Usefulness

Hi EverybodyAs the title says I try to think how much useful is to use character controller (CC) for driving your character in the scene. But I don't.Imagine the following workflow :- Each bone is represented as a rigid body- A constraint is created for each rigid body pair- All other objects like (actions, phantoms, ...) are created.- The surrounding environnement consist of an uneven terrain and many crates.- All objects above are put on the scene.Without CC I still can move my character and make him interact with his environment (collide the craters....).For example- for make him walk I will apply an inpulse regarding the direction of the user input.- for jumping I will apply an inpulse towards the up direction.All this inpulses will be applied on the root bone (often the hip).Of course all commentary above are theoritically-based because I lack of partice.Maybe the CC woul be just the hip controller (on my example) ? If yes the usefulness isslight !!What about specific Havok CC ?Can you share your different experience and knowledge ?Thanks in advance

publicaciones de 3 / 0 nuevos
Último envío
Para obtener más información sobre las optimizaciones del compilador, consulte el aviso sobre la optimización.

- Each bone is represented as a rigid body- A constraint is created for each rigid body pair

I fail to see how such thing wouldn't fall apart. You need more than just constraints to keep those bones up; otherwise they're just ragdolls.

- for make him walk I will apply an inpulse regarding the direction of the user input.- for jumping I will apply an inpulse towards the up direction.Maybe the CC woul be just the hip controller (on my example) ? If yes the usefulness isslight !!

Forgetting for a moment that a rigid bone + constraint as bones setup won't work (unless you do something more to that), using the CC has the following advantages:

  • You don't have to code one by your own (time saver)
  • Has some math that makes it "feel" more like a character rather than i.e. a bouncing ball. It's true that you can apply impulses and expect their reactions to do the rest, but since we aren't a dead rock; it won't feel natural. Acceleration & Deacceleration is different (Havok applies a "gain" factor to control them) from a regular rigid body; 99% of the time our head is pointing up (except in special games; i.e. a free fall simulation); Havok supports for "ground hugging" (clamps the vertical velocity to zero when transitioning from onGround to inAir), horizontal projection (travel at higher speeds when walking through steep slopes), max slope angle, and some other stuff that makes a Character to feel more natural & intuitive. Most of those features are optional so if there's something you don't like; just disable it.
  • Havok supports a CC through a state machine, which allows you to set different parameters depending on whether your character is in the air, touching the ground, climbing a ledge or a wall, or jumping. For example when your character is in the air:
    • Realistic games will kill any kind of character input to prevent altering it's trajectory.
    • Fantasy games (i.e. Sonic) will allow influencing movement to alter the trajectory, but less powerfull than when touching the ground. Also it's deacceleration rate is much lower. On the ground a character would stop almost immediately.

Hope it clears that up.
Cheers

Matias N. Goldberg Intel Havok Physics Innovation Contest Winner * Most Innovative Use of Physics in a Game (2nd Place) * Best Physics Knowledge Base Entry (2nd Place)

Thanks dark_sylinc for your reply.Quote:

I fail to see how such thing wouldn't fall apart. You need more than just constraints to keep those bones up; otherwise they're just ragdolls.
You're right I have miss something
Great explanation nothing else to add

Deje un comentario

Por favor inicie sesión para agregar un comentario. ¿No es socio? Únase ya