
Portals allow a map to have a geometry not normally possible in a "2.5D" engine such as Doom. A few ports have implemented portals. A surface, such as a wall, a floor, or a ceiling, becomes a "window" allowing to see another part of the level. The difference between a portal and a camera texture is that the angle and pitch of the viewpoint always match that of the player looking through the portal. In a way, the sky in Doom can be thought of as a type of floor/ceiling portal, since the ceiling or floor does not display its flat in the normal manner, but instead shows a projected wall texture from a fixed viewpoint.
There are several types of portals:
- Sight-only portal
- When looking at a portal surface, instead of seeing the surface, the player sees another part of the map. However, the portal remains impossible to pass through; and no-clipping through it shows that there is actually nothing.
- Pass-through portal
- Passing through such a portal is possible and allows to seamlessly get to the associated area.
- Wall portal
- The portal's surface is on a wall.
- Floor or ceiling portal
- The portal's surface is on a floor or ceiling. Often used for skyboxes.
- Fixed-point portal
- The view from the portal is always from the same point, usually chosen by a "camera" object in the reference sector. Skyboxes usually are of this type.
- Moving-point portal
- The portal's camera moves along with the player. This allows to create "room-over-room" effect, however the mapper needs to make sure that the camera will always be at a valid position for any point where the portal surface can be seen; otherwise a hall of mirrors effect will appear as if the player had noclipped into the void.
For more information on what types of portals are supported, how they are implemented, and the limitations they have; refer to the documentation of the source port used.
Source ports with portals
- Eternity Engine — see portals and linked portals at the Eternity Engine wiki
- ZDoom and derivatives — see skybox and stacked sectors at the ZDoom wiki