1. 程式人生 > >獲取 RenderTexture 的幾種方式

獲取 RenderTexture 的幾種方式

RenderTexture Constructor

public class ExampleClass : MonoBehaviour {
    public RenderTexture rt;
    void Start() {
        rt = new RenderTexture(256, 256, 16, RenderTextureFormat.ARGB32);
    }
}

RenderTexture.GetTemporary

This function is optimized for when you need a quick RenderTexture to do some temporary calculations.

CommandBuffer.GetTemporaryRT()

Add a “get a temporary render texture” command.

RenderTexture Assets

通過編輯器建立 RT 資原始檔,Assets -> Create -> Render Texture

Camera.OnRenderImage

public class Example : MonoBehaviour
{
    Material material;
    void OnRenderImage(RenderTexture source, RenderTexture destination)
    {
        // Copy the source Render Texture to the destination,
        // applying the material along the way.
        Graphics.Blit(source, destination, material);
    }
}

GrabPass

在 Shader 中使用 GrabPass 獲取 RT

GrabPass
 {
	"_BackgroundTexture"
}