Single-Precision Mantissas Drop Odd Integers Past 16,777,216 Units, Forcing Game Engines to Rebase
When virtual worlds expand beyond 16.7 million units, 32-bit floating-point math loses the ability to count by ones, causing models to jitter and physics to break. To fix this, game engines either shift the entire universe back to zero or upgrade to 64-bit coordinates.
By Tara Reddy
In short
- Standard 32-bit game engines lose the ability to track odd-numbered coordinates once an object moves 16.7 million units away from the center.
- This precision loss forces 3D models to snap to even numbers, causing violent visual jitter and breaking physics calculations.
- Modern engines like Unreal Engine 5 solve this by upgrading to 64-bit double-precision math, expanding the stable world size to billions of kilometers.
In April 2022, Epic Games released Unreal Engine 5, fundamentally altering how massive digital landscapes are constructed by natively supporting 64-bit double-precision floats. Before that update, developers building open-world games faced a hard mathematical wall. The moment a player traveled too far from the center of the universe, the game's physics would violently shake.[3]
The culprit behind this digital earthquake is the IEEE 754 single-precision floating-point format. Established in 1985, this 32-bit standard is the default method computers use to calculate decimal numbers. It trades absolute precision for processing speed, a compromise that works perfectly until virtual environments scale to the size of actual cities.[1]
Inside a standard 32-bit float, exactly 24 bits are dedicated to the mantissa, the component that holds the number's significant digits. Because two to the power of 24 equals exactly 16,777,216, a single-precision float can perfectly represent every whole integer up to that exact threshold.[1]
The moment a coordinate crosses 16,777,216, the engine physically runs out of bits to track single units. The distance between representable numbers jumps from one to two, meaning the computer can no longer store the number 16,777,217. It rounds the value to the nearest even number, dropping odd integers entirely.[1]
The 32-Bit Mathematical Wall
As the numbers grow larger, the precision loss compounds exponentially. Cross the 33.5-million mark, and the step size jumps to four. By the time a coordinate reaches 134 million, the engine can only place objects in increments of 16 units, creating massive dead zones where no physical object can exist.[1]
In a game engine, these mathematical values dictate physical space across the X, Y, and Z axes. A character model or a vehicle is constructed from thousands of individual vertices, each requiring a precise coordinate. When placed near the zero origin, the engine plots these vertices with microscopic accuracy.[6]
When that same character model moves past the 16.7-million threshold, the math breaks down. Vertices that should sit at an odd-numbered coordinate are forcibly snapped to an even one. Because the model is constantly animating and moving, its vertices snap back and forth between available numbers every single frame.[4]
The visual result is a chaotic distortion known as floating-point jitter. The character's mesh tears, their animations vibrate violently, and dynamic shadows detach from their light sources. Physics engines also collapse, causing vehicles to fall through solid ground because the collision detection cannot resolve their exact locations.[4][5]
Translating Math Into Physical Jitter
Because different game engines use different base units, this precision collapse happens at vastly different physical distances. In Unity, the default scale dictates that one unit equals one meter. At that scale, a developer can build outward for 16,777 kilometers before the engine begins dropping odd-meter precision.[2][6]
Unreal Engine 4, however, was built on a much smaller default scale, where one unit equals one centimeter. This means the exact same mathematical wall is hit at just 167.7 kilometers from the origin. For modern open-world titles, a 167-kilometer map is a realistic target, forcing developers to confront the math.[3][6]
To build worlds larger than these limits, developers historically relied on a smoke-and-mirrors technique called origin rebasing. Instead of letting the player travel infinitely far from the zero coordinate, the engine meticulously tracks their distance. The virtual universe is treated like a treadmill rather than a static map.[5]
The engine defines a safe zone, typically a five-kilometer radius around the absolute center of the world at (0,0,0). The player explores normally within this bubble, completely unaware of the mathematical boundaries. But when they cross that five-kilometer threshold, the engine intervenes to protect its precision.[2][5]
The Illusion of Origin Rebasing
In a fraction of a single frame, the game pauses its spatial math and teleports the player back to the exact center of the universe. Simultaneously, it shifts every mountain, enemy, and building in the entire world backward by the exact same negative amount.[2][5]
This massive spatial shift is entirely invisible to the user. The camera remains locked, and the relative distance between the player and their surroundings never changes. The universe simply slides underneath them, ensuring the floating-point coordinates never grow large enough to trigger the dreaded jitter.[2]
While origin rebasing solves the visual problem, it introduces severe complications for multiplayer games. "If your game requires objects that are truly far apart—like a spaceship near the origin and distant planets far out in space—this method won't work," explains indie developer Code Monkey regarding the technique's limits.[4]
In a multiplayer environment, if one player is standing at the origin and another is exploring a continent ten kilometers away, they cannot share the same shifted coordinate space. The server must maintain a master coordinate system and constantly translate relative positions for every connected client.[6]
Multiplayer Coordinate Conflicts
This constant translation burns vital CPU cycles and introduces networking latency. Physics calculations become incredibly complex when a sniper bullet fired in one player's local coordinate space must be accurately mapped into the shifted reality of a target standing thousands of units away.[6]
The permanent solution to this architectural headache is abandoning 32-bit floats entirely in favor of 64-bit double-precision floats. By doubling the memory footprint of every spatial coordinate, an engine fundamentally rewrites the boundaries of its virtual universe, pushing the precision wall out to astronomical distances.[3]
A 64-bit float dedicates 53 bits to its mantissa, vastly expanding the pool of significant digits. Instead of dropping odd integers at 16.7 million, a double-precision float can perfectly track every single unit up to 9,007,199,254,740,992. The mathematical ceiling is pushed back by a factor of 536 million.[1][6]
At Unreal Engine's scale of one centimeter per unit, this 64-bit upgrade allows a seamless, continuous world that is 90 billion kilometers wide. Developers can simulate the distance from the Earth to the Sun without ever needing to shift the universe or worry about a vibrating character model.[3][6]
The 64-Bit Double-Precision Fix
"The groundwork has been laid for creating absolutely massive worlds in UE5—without the need for rebasing or other tricks," Epic Games stated in their 2022 release documentation. The introduction of Large World Coordinates made double-precision math the default standard for the engine's spatial logic.[3]
This transition requires more memory and slightly higher processing overhead, but modern gaming hardware easily absorbs the cost. Graphics processing units are now heavily optimized for 64-bit math, allowing the industry to leave the 32-bit spatial limitations in the past where they belong.[6]
This transition requires more memory and slightly higher processing overhead, but modern gaming hardware easily absorbs the cost.
The shift to double precision also revolutionizes space simulators and flight games, where extreme speeds and vast distances previously required complex scaling tricks. Instead of shrinking distant planets to fake their distance, developers can now place them at their actual, mathematically accurate coordinates.[4]
As virtual reality and massive multiplayer environments continue to expand, the underlying math must scale with them. The death of the 32-bit coordinate ensures that the next generation of digital worlds will remain stable, no matter how far players choose to travel from home.[6]
How we did this
- Method
- Calculated the physical distance thresholds at which single-precision floating-point errors manifest in major game engines by converting the 16,777,216-unit mathematical limit into real-world kilometers based on each engine's default unit scale.
- What we found
- The precision collapse occurs at vastly different scales depending on the engine: Unity games begin dropping odd-centimeter precision at 16,777 kilometers from the origin, while Unreal Engine 4 titles hit the exact same mathematical wall at just 167.7 kilometers, forcing developers using Unreal to implement origin rebasing much earlier in open-world design.
- What we worked from
- IEEE 754 single-precision mantissa limit: 16,777,216 — IEEE
- Unity default unit scale (1 meter): 1 meter per unit — Unity Technologies
- Unreal Engine default unit scale (1 centimeter): 1 centimeter per unit — Epic Games
- Limits of this analysis
- This calculation assumes developers are using the engine's default unit scale without applying custom spatial multipliers or nested coordinate systems.
Definitions
- Mantissa
- The portion of a floating-point number that contains its significant digits, determining the absolute precision of the value.
- Floating-Point Jitter
- A visual glitch where 3D models vibrate or tear because their coordinates are being rounded to the nearest available integer.
- Origin Rebasing
- A programming technique that teleports the player back to the center of the virtual world while shifting all other objects backward to match.
- Double-Precision Float
- A 64-bit data type that provides more than double the significant digits of a standard 32-bit float, virtually eliminating spatial precision errors.
Questions & answers
Does floating-point jitter affect 2D games?
Yes, 2D engines rely on the exact same 32-bit math for their X and Y axes. A 2D sprite placed millions of pixels away from the origin will snap to even-numbered coordinates, causing jagged scrolling and physics glitches.
Why didn't older games use 64-bit coordinates?
Historically, 64-bit math required twice the memory bandwidth and was significantly slower on older processors. Game engines standardized on 32-bit floats to maximize frame rates on the limited hardware of the 1990s and 2000s.
Can origin rebasing hide the loading of new areas?
No, origin rebasing only shifts the mathematical coordinates of objects already loaded in memory. Streaming new terrain or textures from the hard drive is handled by a separate level-streaming system.
Analysis by camp
Engine Architects
Developers building the core technology prioritize absolute mathematical stability over legacy hardware support.
For the engineers maintaining platforms like Unreal Engine and Unity, the 32-bit float was a decades-long compromise dictated by the memory constraints of older consoles. By forcing the transition to 64-bit double-precision math, they are future-proofing their platforms for the metaverse era. They argue that as virtual worlds scale to encompass entire planets, relying on origin rebasing is a fragile hack that fundamentally limits what creators can build, especially in seamless multiplayer environments.
Indie Developers
Solo creators and small studios focus on practical workarounds that keep their games running smoothly on limited budgets.
Independent developers often view 64-bit coordinates as overkill for most projects. Because double-precision math consumes more memory and can complicate physics calculations on lower-end mobile devices, many prefer to stick with 32-bit floats and implement origin rebasing. For a small team building an endless runner or a stylized space game, shifting the universe every five kilometers is a proven, well-documented trick that saves them from having to rewrite their entire physics logic.
- Engine Architects
- Developers building the core technology prioritize absolute mathematical stability over legacy hardware support.
- Indie Developers
- Solo creators and small studios focus on practical workarounds that keep their games running smoothly on limited budgets.
Perspectives this story doesn't cover
- Speedrunners who exploit floating-point errors to break game boundaries
Sources
[1]IEEEEngine ArchitectsIEEE 754-2019 - IEEE Standard for Floating-Point Arithmetic
Read on IEEE →
[2]Unity TechnologiesEngine ArchitectsTransforms and Floating Point Precision
Read on Unity Technologies →
[3]Epic GamesEngine ArchitectsLarge World Coordinates in Unreal Engine 5
Read on Epic Games →
[4]Code MonkeyIndie DevelopersThe Floating Point Problem in Huge Worlds
Read on Code Monkey →
[5]Manuel RauberIndie DevelopersFloating Origin in Unity
Read on Manuel Rauber →
[6]Factlen Editorial TeamSynthesis by Factlen editorial team
Read on Factlen Editorial Team →
More in Entertainment
See all →Behavioral Design
The Achiever, the Explorer, the Socializer, and the Killer: How Bartle's Taxonomy Classifies Player Motivation
6 sources
Casino Consolidation
Caesars Entertainment Board Shakes Up as FTC Deepens Probe Into $17.6 Billion Fertitta Buyout
4 sources
VR Industry
Acclaimed VR Studio Polyarc Games, Developer of the 'Moss' Series, Shuts Down
7 sources
Studio Politics
Sony Dropped Kojima's 'Physint' Over Budget and Timed Exclusivity Concerns, Sources Say
5 sources
Comments
Every angle. Every day.
Get Entertainment stories with full source coverage and perspective breakdowns, free every day.




