Difference between revisions of "Long wall error"

From DoomWiki.org

[unchecked revision][unchecked revision]
(+ cat)
Line 5: Line 5:
 
== Technical ==
 
== Technical ==
  
The effect is caused by loss of precision in calculations internal to the [[Doom rendering engine|rendering engine]].  Doom internally uses [[Wikipedia:Fixed-point arithmetic|fixed-point arithmetic]] to perform calculations, for speed.  As these fixed-point numbers have a limited range, incredibly long walls can cause a loss of precision, leading to the wall being rendered at the wrong location.
+
The effect is caused by loss of precision in calculations internal to the [[Doom rendering engine|rendering engine]].  Doom internally uses [[Wikipedia:Fixed-point arithmetic|fixed-point arithmetic]] to perform calculations, for speed.  As these fixed-point numbers have a limited range, incredibly long walls can cause a loss of precision, leading to the wall being rendered at the wrong location.  In extreme cases (walls of greater than 10000+ units in length), collision detection stops, and "things" are able to pass right through a wall.
  
 
== Example ==
 
== Example ==

Revision as of 15:10, 2 October 2008

Long wall error refers to a bug which occurs when incredibly long linedefs are present in a level. Such lines may appear to shift back and forward as the player moves relative to them.

The effect can only be seen on incredibly long walls (greater than 1024 units) composed of a single linedef. Greater lengths accentuate the effect more. The problem can be avoided by breaking long walls into multiple linedefs.

Technical

The effect is caused by loss of precision in calculations internal to the rendering engine. Doom internally uses fixed-point arithmetic to perform calculations, for speed. As these fixed-point numbers have a limited range, incredibly long walls can cause a loss of precision, leading to the wall being rendered at the wrong location. In extreme cases (walls of greater than 10000+ units in length), collision detection stops, and "things" are able to pass right through a wall.

Example

  • LOGO.WAD is a deathmatch wad from 1994 that consists of four large rooms modelled on the letters of the Doom logo. The leftmost wall of the letter D and the rightmost wall of the letter M exhibit the long wall error; the author mentions the bug in his textfile.