Portal-based rendering

from Wikipedia, the free encyclopedia

The portal-based rendering differs quite significantly from other algorithms , as it for use inside views ( indoor scenes was conceived). In contrast to extensive areas, usually only a very small area can be used for rendering . The background to the process is based on the following idea: The environment consists only of rooms that are connected by so-called portals (doors, windows, etc.). Only the room in which the viewer is located and all adjoining rooms come into consideration for the visibility area (recursive). The room division is not part of the process, but is either determined in advance by the designer or calculated using automated algorithms.

First, all polygons in the room in which the camera is located are tested for visibility and rendered. It is then checked whether there is a portal in the visibility area, and the space behind the portal is rendered with a correspondingly reduced visibility area. This process is recursive, that is, it calls itself until all visible spaces have been processed.

One advantage of this rendering is that geometrically independent rooms can easily be linked together. For example, a mirror can be created by specifying the same room twice for a portal. The otherwise very time-consuming calculation of light and shadow effects is also easy here: First, a scene is calculated with the visibility range of the light source (not actually rendered) and illuminated accordingly. Then the scene is rendered from the viewer's point of view.

Since many steps, such as the visibility test, can be carried out in hardware, the implementation of such an algorithm is easy and the performance is quite good due to the hardware acceleration . The major disadvantage of portal-based rendering, however, is that it is completely unsuitable for outdoor scenes . Therefore, this algorithm is combined with other methods such as binary space partitioning or octrees in many modern 3D applications .