Facebook Twitter YouTube Frictional Games | Forum | Newsletter | Dev Blog | Dev Wiki | Support | Gametee


Thread Closed 
Thomas, 2008-06-18, "Character version 2.0"
Author Message
Thomas Offline
Frictional Games

Posts: 2,634
Joined: Apr 2006
Reputation: 68
Post: #1
Thomas, 2008-06-18, "Character version 2.0"

I have spent the last 2 weeks working on a new character controller for HPL2 and finally the bulk of the code is complete.

The reason for making a new character controller is that the one in the old engine (which is used in Penumbra) is very bad at interacting with other physical bodies. I used a quite different approach for the new character controller and have made it a lot better at handling interactions.

At the end of this post is a video of the character controller in action. Some high lights are:
  • The character can interact both ways with physical object, ie both get and be pushed. The best example of this is the seesaw where the character can both push it down and, if enough weight is applied on the other side, get pushed up. This is something that no other games do, except for games that uses non-exact physical objects as "characters" (for example: Marble Madness clones, car games, etc).
  • The controller can walk up slopes with out sliding down and will "stick" to them when walk down.
  • The character can climb stairs and the speed at which a stair is climbed is settable (notice how the character is on ground during climbing in upper left corner).
  • When standing on objects the player will slide along even if they rotate. Also notice the support for inertial frames, when the character jumps straight up while riding the box, the character stays put according to the position of the box (except for a tiny bit caused by wind resistance).
  • The character can get attached to physical bodies which makes a good base for grabbing onto ledges, swinging in ropes, etc.

Now for the video:
http://www.youtube.com/watch?v=S26HphuXioU
06-18-2008 05:04 PM
Find all posts by this user
Petike Offline
Senior Member

Posts: 292
Joined: Apr 2008
Reputation: 2
Post: #2
RE: Thomas, 2008-06-18, "Character version 2.0"

Thomas Wrote:I have spent the last 2 weeks working on a new character controller for HPL2 and finally the bulk of the code is complete.

The reason for making a new character controller is that the one in the old engine (which is used in Penumbra) is very bad at interacting with other physical bodies. I used a quite different approach for the new character controller and have made it a lot better at handling interactions.

Wow, it looks great ! Really better interaction with the objects just by bumping into them... Good work, Thomas ! :-)

"You... silly Billy !" (Clarence, Penumbra : Black Plague)
06-18-2008 05:28 PM
Find all posts by this user
WindexGlow Offline
Posting Freak

Posts: 1,108
Joined: Mar 2007
Reputation: -5
Post: #3
RE: Thomas, 2008-06-18, "Character version 2.0"

Great work; however what happens if you're agaisnt a wall when a heavy object is coming at you?
Will it stop moving too? Will you die? Or will (what happens in hpl1) You simply jump extremely fast, sometimes even through walls?

Btw, I'm guessing you're supporting player models/third perspective?

Please -REP me.
Honestly, please do. I want to see how low I can go!!
Ignore that error message too. Just ignore it and keep going to give me -rep.
06-18-2008 07:42 PM
Find all posts by this user
eliasfrost Offline
Posting Freak

Posts: 1,769
Joined: Mar 2007
Reputation: 39
Post: #4
RE: Thomas, 2008-06-18, "Character version 2.0"

Nice. I see HPL 2 is using soft shadows instead of stencil ones.

And the new character interaction is really promising, I really want to see this in action (In-game). Smile

[Image: indiedb_88x31.png]
06-18-2008 07:54 PM
Find all posts by this user
Thomas Offline
Frictional Games

Posts: 2,634
Joined: Apr 2006
Reputation: 68
Post: #5
RE: Thomas, 2008-06-18, "Character version 2.0"

WindexGlow:
As long as the object is not too heavy it will be pushed away, otherwise the charater will get squished Tongue So in normal cases the object simple stops moving.

HPL1 also supported thrid person and player models. For example all of the enemies used the same (except for some settings) character controller as the player. So HPL2 will support what ever kind of view system is used.
06-18-2008 08:37 PM
Find all posts by this user
Klayman Offline
Member

Posts: 160
Joined: Mar 2007
Reputation: 0
Post: #6
RE: Thomas, 2008-06-18, "Character version 2.0"

Awsome! I hope that this will eliminate "Flying carpet" trick in Penumbra Smile
Well I have 2 questions:
So if something heavy fall on player then he will get killed or hurt?
I saw you can "ride" on objects. Will that be possible to do opposite? Like you drop a stone on your head and walk around with it on your head?
This will give us new options in making (physical) traps!
06-19-2008 10:51 AM
Find all posts by this user
Thomas Offline
Frictional Games

Posts: 2,634
Joined: Apr 2006
Reputation: 68
Post: #7
RE: Thomas, 2008-06-18, "Character version 2.0"

Quote:So if something heavy fall on player then he will get killed or hurt?
That is very game specific as a character controller is just an engine object and does not really care bout death, life stuff like that Smile But it should be very possible to code into the game.

Quote:Will that be possible to do opposite? Like you drop a stone on your head and walk around with it on your head?
Nope, I just think it is odd if a box ends up on the players head so I have made sure that stuff should fall off if possible. This was something that could happen with the old character controller though, although the object would not "ride" with the character.
06-19-2008 10:56 AM
Find all posts by this user
starstutter Offline
Junior Member

Posts: 8
Joined: Jun 2008
Reputation: 0
Post: #8
RE: Thomas, 2008-06-18, "Character version 2.0"

Engine looks great and I like the new shadow system Smile

About penumbras lighting system, have you guys thought about using deferred shading? Or is that too hardware strenuous for your liking? I recently switched my engine to deferred and have found the speed increases are phenominal with scene complexity scaling. It works especially well in systems where you have lots of low coverage lights (aka night scenes and other things you can think of). It can also greatly speed up soft shadow rendering.

Srry, not going on a tech rant here, but I am very knowledgeable in graphics technologies and would like to help you guys out in a way. I really admire what you guys are doing with the genre (that is, breaking out of the mindless fps violence) and would like to help in any way I can.
06-29-2008 09:34 PM
Find all posts by this user
Thomas Offline
Frictional Games

Posts: 2,634
Joined: Apr 2006
Reputation: 68
Post: #9
RE: Thomas, 2008-06-18, "Character version 2.0"

HPL2 uses deferred shading Wink
06-30-2008 06:50 AM
Find all posts by this user
eliasfrost Offline
Posting Freak

Posts: 1,769
Joined: Mar 2007
Reputation: 39
Post: #10
RE: Thomas, 2008-06-18, "Character version 2.0"

What exactly is Deferred Shading? I have heard it quite some times now. Smile

[Image: indiedb_88x31.png]
06-30-2008 07:15 AM
Find all posts by this user
Thread Closed 




User(s) browsing this thread: 1 Guest(s)