VOOZH about

URL: https://en.wikipedia.org/wiki/Multiple_Render_Targets

⇱ Multiple Render Targets - Wikipedia


Jump to content
From Wikipedia, the free encyclopedia
Feature of modern graphics processing units
This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "Multiple Render Targets" – news · newspapers · books · scholar · JSTOR
(March 2026) (Learn how and when to remove this message)
This article relies excessively on references to primary sources. Please improve this article by adding secondary or tertiary sources.
Find sources: "Multiple Render Targets" – news · newspapers · books · scholar · JSTOR
(March 2026) (Learn how and when to remove this message)
(Learn how and when to remove this message)

In the field of 3D computer graphics, Multiple Render Targets, or MRT, is a feature of modern graphics processing units (GPUs) that allows the programmable rendering pipeline to render images to multiple render target textures at once.[1] These textures can then be used as inputs to other shaders or as texture maps applied to 3D models. Introduced by OpenGL 2.0 and Direct3D 9, MRT can be invaluable to real-time 3D applications such as video games. Before the advent of MRT, a programmer would have to issue a command to the GPU to draw the 3D scene once for each render target texture, resulting in redundant vertex transformations which, in a real-time program expected to run as fast as possible, can be quite time-consuming. With MRT, a programmer creates a pixel shader that returns an output value for each render target. This pixel shader then renders to all render targets with a single draw command.

A common use of MRT is deferred shading, a shading process which, unlike forward shading, performs lighting calculations on an entire 3D scene at once instead of on each individual object. To do this in real-time, MRT is used to store the required information for the lighting calculations in multiple render targets, which are then used after the entire scene has been drawn to calculate the lit final image. Typically one render target holds color and surface information of objects, while another contains the surface normals and depth information of the scene which are used to calculate the reflection of light. Additional render targets can be used to store information such as the specularity of the surface and ambient occlusion data.

See also

[edit]

References

[edit]
  1. ^ "Multiple Render Targets | PlayCanvas Developer Site". developer.playcanvas.com. Retrieved 2026-03-26.