CameraImageRenderer Class¶
Description¶
在场景中控制camera图像渲染的 MonoBehaviour ,这个类目前不支持Unity universal render pipeline (URP) ,但你可以自行扩展这个类的实现来支持URP。
MonoBehaviour Messages¶
protected virtual void Awake() |
protected virtual void OnEnable() |
protected virtual void OnDisable() |
protected virtual void OnDestroy() |
Events¶
OnFrameRenderUpdate¶
camera图像渲染更新的事件。这个事件会传出当前用于camera图像渲染的材质和贴图大小。当这个事件发生时,camera图像本身不一定有改变,它只表示一次渲染的发生。
Methods¶
RequestTargetTexture¶
- C#
public void RequestTargetTexture(Action< Camera , RenderTexture > targetTextureEventHandler)
获取camera图像的 RenderTexture 。
通过这个接口获取的texture是从 OutputFrame 获取的完整大小的图像,未经屏幕裁剪。 targetTextureEventHandler action会传出 RenderTexture 以及用于绘制texture的 Camera 。这个action不会每帧调用,也不会在camera图像数据发生变化的时候调用,它只会发生在texture本身创建或改变的时候。调用这个方法会创建额外的资源且会在必要时触发渲染,因此在不使用的时候需要调用 CameraImageRenderer.DropTargetTexture 释放资源。
DropTargetTexture¶
- C#
public void DropTargetTexture(Action< Camera , RenderTexture > targetTextureEventHandler)
释放绘制camera图像的 RenderTexture 。内部资源将在所有持有者都释放后释放。