|
Flannelette posted:And older style collision No sane human being would design a collision system like this, btw, with 50 different "hitboxes" for every wall for different player states. Instead you would have one polygon (or polyhedron) for each wall and change the player's collision volume depending on their state. To achieve the effect that Mario could get closer to a low wall and step up on it, you'd do a check first from the middle of Mario to see if that part hits anything; if it doesn't do a shorter test from the knees or something; if that also doesn't hit anything, allow Mario to move up on the thing. Basically imagine the stacked boxes on those walls upside down and placed on Mario instead (but you probably wouldn't want them to be actual boxes rather than just very simple line or volume/sphere tests). The thing described in that video is just so backwards for no real advantage that I really doubt that's actually how Mario 64 works.
|
# ¿ Apr 30, 2019 14:48 |
|
|
# ¿ Apr 27, 2024 19:07 |
|
I mean, has anyone actually dug into the code to verify that's how it works? Because I literally can't find anything to suggest that. The best I found is the level structure, where the collision is pretty clearly stored as three vertices and a plane vector, with no hint of any boxes. So if they exist, they must be constructed at runtime, but storing that would be slow and take up memory (and there would surely be debug tools showing them). So instead they would be calculated when needed on a per check basis. But this is pretty different from saying the walls "have" boxes, as they would only exist during that particular check, and other colliding things would/could put their own boxes on the triangles. Also note that the slope "boxes" in the video are actually parallelepipeds, requiring at least one full plane check you can't get around by transforming everything to be axis aligned with the box. So the system still requires complex calculations (which should be obvious anyway, as the system handles objects rotating in all sorts of ways, and the boxes would actually represent triangles). Like, the system described just sounds totally awkward, not like an evolution of 2D collision. If someone can verify it, that's fine, but no one should get the idea that this is a good way to build a collision system. It won't give you a "retro" feel, it'll just give you headaches. Points against tiles on other hand can have real uses.
|
# ¿ Apr 30, 2019 17:46 |