Mirror
Mirrors can be created on walls in ZDoom with the Line_Mirror special.
Note that mirrors have limitations. They can be resource-intensive for the renderer, especially if there are recursive reflections. To improve performance, fake mirrors are sometimes used in maps: the mapper constructs the reflected scene directly and uses a translucent texture as the "mirror". The drawback of this approach is that the "mirrored" scene is not updated in real time, so for example the player will not be able to see himself or enemies in the mirror. Fake mirrors can be used with stacked sectors to create the illusion of reflective floors in the software renderer.
The visibility of actors on mirrors can also be modified, by using the INVISIBLEINMIRRORS and ONLYVISIBLEINMIRRORS flags.
If mirrors cause performance problems in a map, the r_drawmirrors can be used to turn them off.
Note that the hall of mirrors effect is not a glitch actually related to mirrors.
OpenGL
Warning: This feature does not work in ZDoom but in its OpenGL children ports. |
The OpenGL renderer used in GZDoom and Zandronum features enhancements not available in software. Similar to mirrors, true reflective floors or ceilings are also possible with Sector_SetPlaneReflection. Furthermore, an optional environment map is applied to mirrors as well, unlike in the software renderer, where the scene is simply reflected.