floor test explainer image (needle triangle, accepted sliver, kuzco, heights), poly 11 is the same needle on the crate's other side

This commit is contained in:
MineTec committed 2026-11-08 16:21:37 +01:00
1 parent 9e8e7f9a10
commit 8baed2e87c
3 files changed
+133

No files matched your search

+4
View File
@@ -91,6 +91,10 @@ and are set on load.
* Collision queries: `FUN_004036d0` (floor/ceiling against the map tiles), `FUN_00403ad0` (the same floor test against strat objects with a collision model, not walls – see the floor test section below), `FUN_004042f0`, `FUN_004046e0`. Only **the tiles of the grid cell the player stands in** are tested (cell list from MAP), point relative to the tile's B position, rotated by −rot.
### Floor test: inclusion rule and the floating-next-to-the-log case
![top and side view of the needle triangle next to the crate](img/floor_explained_t1l4m002.png)
The crate has two such needles, one per long side: poly 15 (z 43.68–43.73, measured live) and poly 11 (z 43.29–43.38, same shape, where a user got stuck). Drawn with `tools/floorviz.py`.
(2026-11-08, from the decompile + objdump of 0x4036d0–0x403ad0, a bit-exact Python re-implementation
`tools/floortest.py`, and live reads in game. [certain] unless marked.)
Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB