Zdoom In Floating Point - Adventures In Minus World

Channel:
Subscribers:
329
Published on ● Video Link: https://www.youtube.com/watch?v=RVxAQAFnGio



Duration: 4:14
904 views
27


ZDoom recently changed all the physics to double precision floating point. However, all the map geometry is still 16bit, so now ZDoom has a new overflow anomaly; a ghosted "minus world"! Technical details below:

As your map position is represented in a 64bit floating point value, you can run far further than what a map can occupy, but translating this information back to the BSP (used for rendering and sector identification) means changing it back to a 16bit integer, which means you will always run back into the map, no matter how far out you go. Kind of.

Most things can't interact with you because only the renderer thinks they are there, however sector effects can still damage you as this is purely related to the BSP (same as rendering). The blockmap outright fails at this distance, preventing wall collisions (you can still fail to move to higher sectors, so some walls will appear to be solid but really it's just failing to move you into the next sector), preventing explosions and any type of interaction involving blockmap lookups from working, even within the same local area. Sound also doesn't work as that's also trying to cover the real 64bit distance and you're simply too far away, however triggers used to wake up monsters are sector based so you can still wake up all enemies in an area.







Tags:
Doom
ZDoom
Minus World