I have this collision detection concept I want to discuss

Started by
10 comments, last by LorenzoGatti 9 years, 8 months ago

I am sure there are some old Nintendo games that are isometric with jumping...


Solstice for NES had fairly complex isometric jumping puzzles.
Advertisement

Regarding collision detection for jumping in 3D environments with isometric graphics, it's true that the data structures and algorithms need to be able to represent a 3D environment, but it can be highly simplified. Typically, you might have a 3D grid of blocks that is completely analogous to a 2D grid of tiles; very sophisticated environments might add sloped block faces (like e.g. in Marble Madness).

The environment can be even simpler in some cases: for example if there are no overhanging platforms you can store one floor height at each x,y position with implicit blocks (a stack beginning at the minimum possible height).

On the other hand, some representation are constrained but as difficult to process as general 3D geometry and more complicated. For example, sparse lists of axis-aligned horizontal or vertical walls, even if the walls are rectangular, require general geometric search (what walls intersect a certain volume, what is the closest wall to an object, etc.) rather than simply looking up a few relevant grid cells..

Whatever you mean by floor pads and land pads, I assume they are horizontal or vertical faces of the map blocks or horizontal or vertical faces of the collision shape of the character, or portions of such faces. Can you give explicit definitions?

With grid-based movement all collision detection algorithms are similar to 2D ones, usually simply projected onto the axis-aligned plane that contains the movement velocity. (Example: the 3D movement in Q*bert is equivalent to climbing a 2D staircase, with a choice of intersecting x-aligned or y-aligned staircases at each step)

Omae Wa Mou Shindeiru

This topic is closed to new replies.

Advertisement