前言
-
BuiltinRenderTextureType是一个枚举类,主要是指向Unity摄像机渲染期间产生的内置临时渲染纹理.
-
如果说使用CommandBuffer可以调整和修改渲染流程,那么这个枚举类提供了让我们读写渲染流程中内置数据的能力.
-
枚举类中的一个枚举CameraTarget, 则主要用于读写当前摄像机的目标缓存的渲染纹理.
CameraTarget的使用
-
这个渲染纹理天然可以被写,并且没有啥限制.怎么写都可以.
-
要想读取渲染纹理的东西,那么就需要以下任一条件才可以(其实这些条件都是为摄像机创建一个自定义的FBO,而不是让摄像机执行默认的FBO):
-
Camera的target不为空的情况。
-
Camera.forceIntoRenderTexture=true,
-
挂载在Camera上的脚本中重载了OnRenderImage方法.
-
QulitySetting的Anti Aliasing不能Disabled,并且Camera的MSAA也要被开启.
-
-
如果想在同一个着色遍中,对这个渲染纹理即可读又要可写,就需要开启MSAA才可以.
-
注意:
-
如果CommandBuffer的执行事件是AfterImageEffect,那么这个渲染纹理的数据就是不可预知的.
-
当然如果你的CommandBuffer没有绑定在摄像机上,调用这个值也是错误的.
-
其他