Version: 5.3 (switch to 5.4b)
IdiomaEnglish
  • C#
  • JS

Idioma de script

Selecciona tu lenguaje de programación favorito. Todos los fragmentos de código serán mostrados en este lenguaje.

Graphics.SetRandomWriteTarget

Sugiere un cambio

¡Éxito!

Gracias por ayudarnos a mejorar la calidad de la documentación de Unity. A pesar de que no podemos aceptar todas las sugerencias, leemos cada cambio propuesto por nuestros usuarios y actualizaremos los que sean aplicables.

Cerrar

No se puedo enviar

Por alguna razón su cambio sugerido no pudo ser enviado. Por favor <a>intente nuevamente</a> en unos minutos. Gracias por tomarse un tiempo para ayudarnos a mejorar la calidad de la documentación de Unity.

Cerrar

Cancelar

Cambiar al Manual
public static function SetRandomWriteTarget(index: int, uav: RenderTexture): void;
public static void SetRandomWriteTarget(int index, RenderTexture uav);
public static function SetRandomWriteTarget(index: int, uav: ComputeBuffer): void;
public static void SetRandomWriteTarget(int index, ComputeBuffer uav);

Parámetros

index Index of the random write target in the shader.
uav RenderTexture/ComputeBuffer to set as write target.

Descripción

Set random write target for Shader Model 5.0 level pixel shaders.

Shader Model 5.0 level pixel shaders can write into arbitrary locations of some textures and buffers, called "unordered access views" (UAV) in UsingDX11GL3Features. These "random write" targets are set similarly to how multiple render targets are set. You can either use a RenderTexture with enableRandomWrite flag set, or a ComputeBuffer as target.

The UAV indexing varies a bit between different platforms. On DX11 the first valid UAV index is the number of active render targets. So the common case of single render target the UAV indexing will start from 1. OpenGL ES 3.1 matches this behaviour when using translated HLSL shaders. However, with hand-written GLSL shaders the indexes will match the bindings. On PS4 the indexing starts always from 1 to match the most common case.

The targets stay set until you manually clear them with ClearRandomWriteTargets.

See Also: RenderTexture.enableRandomWrite, ComputeBuffer, UsingDX11GL3Features.