Parallel Universe
A Parallel Universe, or PU, is an area in a Super Mario 64 map at which the game creates phantom floors, walls, or ceilings despite Mario being "outside" of the level. This is because the casted position value used to check for ground below Mario doesn't have enough bits to go above 7FFFh or below -8000h, unlike Mario's actual position, which is a float.
Though usually the term "PU" refers to a horizontal PU (i.e. one caused by truncation of Mario's X and/or Z positions), vertical PUs (where the Y coordinate is truncated) also exist. However, since Mario's Y position cannot exceed 20000 in most circumstances, there are only three ways to reach a positive vertical PU: Hyper Speed Flying, Platform Release Displacement, and Indefinite Owl Flight. Negative vertical PUs can be reached with Hyper Speed Flying, Platform Release Displacement, or an Overflow Jump. Since all object positions are floats, there are no objects in PUs unless Mario brings one there.
Travel and movement
Parallel Universe movement is comparable to movement through a five-dimensional space, as Mario can be modelled as travelling along five axes: relative X, relative Y, relative Z, PU X, and PU Z. This is because Mario can adjust his speed and angle to move relatively around the stage regardless of how many PUs he moves in the X or Z dimensions.
Since Mario's movement is split up into 4 quarter steps, and Mario cannot move out of bounds, in the game's courses Mario usually travels at least a Quadruple Parallel Universe distance, QPU for short. However, if one of Mario's quarter steps (other than the first one) ends out of bounds, the game will cut his movement short. In this case, Mario does not travel a full 4 PU, instead ending up at a quarter-step between the QPUs depending on where the movement is cut off. This is referred to as a misaligned QPU.
Floating point imprecision errors on Mario's position and angle can affect movement in PUs, causing strange-looking rounding errors.
Parallel universes tend to crash on console due to floating point exceptions. There are 4 ways the crash can happen:
- The camera enters a PU
- Mario bonks while in a PU
- Mario's quarter step gets cancelled while on the ground
- Mario collides with a wall head-on with PU speed
Note: It is currently unknown whether PU crashes occur on the iQue Player version of the game, since it is so hard to obtain.
Gameplay
Many things can cause strange effects when done in a PU. For example:
- Shadows and coin twinkle effects are glitchy
- Spawning a 100 coin star will softlock the game
Emulation
Most emulators (including the official Virtual Console versions) do not correctly emulate crashing due to floating point exceptions. A specialized version of Mupen64 was created that crashes when encountering floating point exceptions in order to better test PU routes.