12
\$\begingroup\$

I was wondering if anyone knew or had knowledge of how to program a climbing system like the one found in tomb raider/uncharted.

I had thought of just having bounding boxes at all the climbable positions in the game world and then check for collision. If the player was inside the box then they would be "hanging" from the edge. Anyone have any better ideas/improvments?

I already have my rendering set up using directx9 and was going to worry about animation later on.

\$\endgroup\$
  • 8
    \$\begingroup\$ youtube.com/watch?v=GFu44oeLYPI&feature=relmfu - Some really good information. \$\endgroup\$ – deceleratedcaviar Jul 19 '11 at 13:33
  • \$\begingroup\$ possible duplicate of Ledge grab and climb in Unity3D \$\endgroup\$ – bummzack Jul 19 '11 at 14:29
  • 2
    \$\begingroup\$ @bummzack the question is the same, but the context is entirely different. Interestingly, I hadn't seen that question before, but the best answer has the link I posted haha. \$\endgroup\$ – deceleratedcaviar Jul 19 '11 at 14:38
  • \$\begingroup\$ and if anybody knew where to find a rigged humanoid model, for future reference, we could test our IK code forever and ever. \$\endgroup\$ – Raine Jul 20 '11 at 15:07
  • \$\begingroup\$ 3dbuzz.com/vbforum/… I have found a set of tutorial videos for creating a 3rd person character system in Unity. I haven't watched it yet but I'm sure it could be converted to work with other languages as the principle of climbing would be the same. \$\endgroup\$ – MulletDevil Apr 8 '12 at 10:18
4
\$\begingroup\$

Valve's 2009 presentation on the AI systems behind Left4Dead goes into considerable detail on the system used for climbing, including ledge detection, obstacle height, animation selection etc.

It is mostly aimed at NPC animation, but most of the actual climbing code should be very similar.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.