当前处于活动状态的渲染纹理。
所有渲染都将进入处于活动状态的 RenderTexture。
如果处于活动状态的 RenderTexture 为 /null/,则在主窗口中渲染所有内容。
Setting RenderTexture.active is the same as calling Graphics.SetRenderTarget. Typically
you change or query the active render texture when implementing custom graphics effects;
if all you need is to make a Camera render into a texture then use Camera.targetTexture
instead.
当 RenderTexture 处于活动状态时,
将自动创建其硬件渲染上下文(如果尚未创建)。
另请参阅:Graphics.SetRenderTarget。
using UnityEngine; using System.Collections;
// Get the contents of a RenderTexture into a Texture2D public class ExampleClass : MonoBehaviour { static public Texture2D GetRTPixels(RenderTexture rt) { // Remember currently active render texture RenderTexture currentActiveRT = RenderTexture.active;
// Set the supplied RenderTexture as the active one RenderTexture.active = rt;
// Create a new Texture2D and read the RenderTexture image into it Texture2D tex = new Texture2D(rt.width, rt.height); tex.ReadPixels(new Rect(0, 0, tex.width, tex.height), 0, 0);
// Restorie previously active render texture RenderTexture.active = currentActiveRT; return tex; } }