[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [pygame] The Giant - 'cool project I'm working on now' - thread.



Hi

here is a good tutorial about 2d collision (probably you already know): http://www.harveycartel.org/metanet/tutorials.html

The most important thing to understand is the 'Separating axis theorem' (as you probably already know it and you can use it for 3D too). It only handles convex polygons. For concave polygons it is a bit more complex (I haven't done such, so I have no idea how to handle them, but the internet sure has an answer).

I used the same techniques for my pyweek entry Murmel and it worked quite well (it is not perfect because of the crappy collision response and it has the bullet-paper problem).

~DR0ID


Michael George schrieb:
It's still somewhat on the back burner, but I've been working on a library to allow you to drag and drop irregularly shaped objects (esp. circles and polygons) while preventing interpenetration. It's a surprisingly hard problem and I'm reading a lot of computational geometry papers to find an algorithm to solve it.

This is a subproject/distraction from my game, PEN (puzzles from the engineer's notebook) which was loosely inspired by the incredible machine: http://sourceforge.net/projects/pen/. You can see a buggy, circles-only version of the dragging problem in the code there if you're curious. I'm hoping a library would be something useful to other game designers. What do you think?

--Mike