Version: 2022.2
Language : English
Streaming Controller component
Custom Render Textures

Render Texture

Switch to Scripting

A Render Texture is a type of TextureAn image used when rendering a GameObject, Sprite, or UI element. Textures are often applied to the surface of a mesh to give it visual detail. More info
See in Glossary
that Unity creates and updates at run time. To use a Render Texture, create a new Render Texture using Assets > Create > Render Texture and assign it to Target Texture in your CameraA component which creates an image of a particular viewpoint in your scene. The output is either drawn to the screen or captured as a texture. More info
See in Glossary
component. Then you can use the Render Texture in a MaterialAn asset that defines how a surface should be rendered. More info
See in Glossary
just like a regular Texture.

Properties

The Render Texture inspectorA Unity window that displays information about the currently selected GameObject, asset or project settings, allowing you to inspect and edit the values. More info
See in Glossary
is similar to the Texture Inspector.

The Render Texture Inspector is almost identical to the Texture Inspector
The Render Texture Inspector is almost identical to the Texture Inspector

The Render Texture inspector displays the current contents of Render Texture in real-time and can be an invaluable debugging tool for effects that use render textures.

Property: Function:
Dimension The dimensionality (type) of the render texture.
2D The render texture is two-dimensional.
Cube The render texture is a cube map.
3D The render texture is three-dimensional.
Size The size of the render texture in pixelsThe smallest unit in a computer image. Pixel size depends on your screen resolution. Pixel lighting is calculated at every screen pixel. More info
See in Glossary
. You can only enter power-of-two values, such as 128 and 256.
Anti-Aliasing The number of anti-aliasing samples. You can select None, 2 samples, 4 samples, or 8 samples. If you select None, Unity does not apply anti-aliasing.
Enable Compatible Color Format Enable this checkbox to make Unity apply a compatible format to the render texture if the defined Color Format is not supported by the platform.
Color Format The color format of the render texture.
Depth Buffer The format of the depth buffer. You can select No depth buffer, At least 16 bits depth (no stencil), or At least 24 bits depth (with stencil). The stencil buffer is a general purpose buffer that allows you to store an additional unsigned 8-bit integer (0–255) for each pixel drawn to the screen.
Enable Mip Maps Check this box to make the render texture generate mipmaps.
Auto generate Mip Maps Check this box to automatically fill the generated mipmaps with relevant data. If you don’t enable this, you’ll have to use the GenerateMips function to fill those mipmaps manually. Alternatively, choose which mip to render into when you call the various SetRenderTarget functions. For more information about the SetRenderTarget functions, see Graphics.SetRenderTarget and Rendering.CommandBuffer.SetRenderTarget.
Dynamic Scaling Check this box to let dynamic resolution scaling resize the render texture. If you don’t enable this, the render texture maintains the same size regardless of the Dynamic ResolutionA Camera setting that allows you to dynamically scale individual render targets, to reduce workload on the GPU. More info
See in Glossary
setting.
Wrap Mode Controls how the texture is wrapped:
Repeat Tiles the texture to create a repeating pattern.
Clamp Stretches the edges of the texture. This is useful for preventing wrapping artifacts when you map an image onto an object and you don’t want the texture to tile.
Mirror Tiles the texture to create a repeating pattern that mirrors the texture at every integer boundary.
Mirror Once Mirrors the texture once, and then falls back to clamping.
Per-axis Lets you set different wrap modes for the U axis and the V axis. The available options are also Repeat, Clamp, Mirror and Mirror Once. For example, when you use latitude-longitude environment maps for reflection probesA rendering component that captures a spherical view of its surroundings in all directions, rather like a camera. The captured image is then stored as a Cubemap that can be used by objects with reflective materials. More info
See in Glossary
, it is useful to have Clamp on the vertical coordinate (V axis), but Repeat on the horizontal coordinate (U axis).
Filter Mode Controls how the sampling of the texture uses nearby pixels. The options are:
Point Uses the nearest pixel. This makes the texture appear pixelated.
Bilinear Uses a weighted average of the four nearest texels. This makes the texture appear blurry when you magnify it.
Trilinear Uses a weighted average of the two nearest mips, which are bilinearly filtered. This creates a soft transition between mips, at the cost of a slightly more blurry appearance.
Aniso LevelThe anisotropic filtering (AF) level of a texture. Allows you to increase texture quality when viewing a texture at a steep angle. Good for floor and ground textures. More info
See in Glossary
Anisotropic filtering level of the texture. This increases texture quality when you view the texture at a steep angle. Good for floor, ground, or road textures.

Example

To create a live arena camera in your game:

  1. Create a new Render Texture asset using Assets >Create >Render Texture.
  2. Create a new Camera using GameObject > Camera.
  3. Assign the Render Texture to the Target Texture of the new Camera.
  4. Create a new 3D cube using GameObject > 3D Object > Cube.
  5. Drag the Render Texture onto the cube to create a Material that uses the render texture.
  6. Enter Play Mode, and observe that the cube’s texture is updated in real-time based on the new Camera’s output.
Render Textures are set up as demonstrated above
Render Textures are set up as demonstrated above

  • 2019–04–11 Page amended

  • Render Texture inspector changed in Unity 2017.2

  • Ability to apply any GPU format to Render Textures added in Unity 2019.1

RenderTexture

Streaming Controller component
Custom Render Textures