Z-Buffer fighting is dependant on the z-buffer depth of the user's graphics card and, in respect to such, the distance between surfaces in the camera's Z plane. The "order" of the 3D objects in a view can be visualized as a greyscale image, where the pixels of an object are all colored by a shade of grey. The brighter the shade, the further they are, so when two objects have pixels overlapping, the darkest one is always rendered first.
In today's graphics cards, there are three modes of z-buffer depth: 16-bit, 24-bit and 32-bit. The higher the bit, the more shades of grey avaliable so to speak, therefore there is a higher percision when measuring distances between objects. A 32-bit depth will result in much less z-buffer fighting from much further distances than 16-bit as the rendering engine has higher percision. With a 16-bit depth, z-buffer fighting will start to occur on objects a relativley short distance away from the camera. Not only this, but "banding" will occur where the flickering becomes more pronounced, thick lines of overlap. Imagine the z-buffer representation, if you will, as a gradient with banding instead of smooth transistions from white to black.
It is important that surfaces are distanced from each other by at least two CTRL-SHIFT clicks in order to avoid close-up overlapping and unpleasant graphical artefacts, which may turn down the visual appeal of a build greatly. However, if there is severe z-buffer fighting visible from distances, where overlap occurs in thick lines, your graphics card may be set to 16-bit depth buffer. This is the default for much older cards, or is turned on for troubleshooting reasons.
Methods for remedying this is different across graphics cards and rendering API's (DirectX or OpenGL):
- Right-click the desktop and click "Graphics Properties..."
- Click on "3D Settings"
- Note: If this button is missing, you may be using an OEM driver. Download the latest driver from Intel.
- Find the attribute "Depth Buffer Bit Depth" and select "24 Bit Depth Buffer"
- Note: Some cards may allow "32 Bit Depth Buffer". However, if memory conservation is a concern, 24-bit depth is sufficent.
- Press OK for both windows. Restart Active Worlds if open.