Non-Euclidean Doom: what happens to a game when pi is not 3.14159 (2022) [video]
What Changing π in Doom Actually Does
- Changing π mainly breaks graphics and movement, leading to warped FOV, sliding motions, texture popping, and eventual unplayability.
- Effects come from Doom’s heavy use of radians in movement and rendering; lookup tables appear to assume a fixed π, and extreme changes cause out-of-bounds accesses and crashes.
- Some wished for smaller incremental changes to see how space “deviates” rather than jumping straight to wildly distorted values.
Is This Really “Non-Euclidean”?
- Several argue this isn’t true non-Euclidean geometry, just “messing with constants” causing glitches.
- Others accept a looser use of “non-Euclidean” for any space that violates ordinary geometric intuitions, including portal-based worlds.
- One perspective notes that Euclidean geometry plus portals breaks several Euclidean axioms, making it “non-Euclidean” in a broad sense, though not a formal geometry.
Game Engines, Portals, and Non-Euclidean Spaces
- Discussion compares Doom’s BSP-based, mostly-2.5D engine to portal-based engines (e.g., Build engine, Marathon, Descent).
- Doom originally disallowed overlapping sectors; later source ports add portals and tricks enabling room-over-room and “impossible” spaces (e.g., MyHouse.wad).
- Portal-style rendering is contrasted with true non-Euclidean manifolds; collision and spatial reasoning through portals are noted as harder than rendering.
Related Games and Media
- Many games are cited as better demonstrations of non-Euclidean or perception-bending spaces: Antichamber, HyperRogue, Hyperbolica, Superliminal, Viewfinder, Manifold Garden, and various portal-based titles.
- Classic examples from other engines include Duke Nukem 3D’s “Lunatic Fringe”, Marathon’s “5D space”, and earlier work like Descent.
Mathematics and Geometry Discussion
- Some commenters clarify that in differential geometry, π itself does not change; curvature affects circle circumference but not the derivative that defines π.
- The talk’s premise is contrasted with more rigorous non-Euclidean constructions (hyperbolic, spherical, Nil geometry, etc.).
Bugs, Constants, and Programming Lessons
- Doom famously uses a slightly wrong 10-digit approximation of π, traced to a misremembered digit.
- Broader lesson: hardcoding constants (e.g., seconds in a day) is error-prone; several real-world codebases are cited as having such typos.
Overall Reception
- Some viewers find the talk fun, playful, and a good curiosity-inducing demo.
- Others dismiss it as clickbait or trivial “garbage in, garbage out” behavior, preferring deeper exploration of actual non-Euclidean geometry.