手动渲染摄像机。
该函数用于渲染摄像机。它将使用摄像机的清除标记、目标纹理和所有其他设置。
摄像机会将 OnPreCull、OnPreRender 和
OnPostRender 发送到附加的任何脚本,并渲染任何最终的图像过滤器。
这用于精确控制渲染顺序。要使用该功能,请创建一个
摄像机并禁用它。然后对其调用 Render。
您无法从当前正在渲染的摄像机调用 Render 函数。如果您希望
这样做,请创建该摄像机的一个副本,并使用 CopyFrom 让其与原始摄像机相匹配。
另请参阅:RenderWithShader。
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour {
Texture2D RTImage(Camera cam) {
RenderTexture currentRT = RenderTexture.active;
RenderTexture.active = cam.targetTexture;
cam.Render();
Texture2D image = new Texture2D(cam.targetTexture.width, cam.targetTexture.height);
image.ReadPixels(new Rect(0, 0, cam.targetTexture.width, cam.targetTexture.height), 0, 0);
image.Apply();
RenderTexture.active = currentRT;
return image;
}
}