在摄像机开始渲染场景前,将调用 OnPreRender。
仅当该脚本附加到摄像机并且启用时,才调用该函数。
注意,如果您在此处更改摄像机的视图参数(例如 Camera.fieldOfView),
它们将仅在下一帧中生效。请改为在 OnPreCull 中进行。
OnPreRender 可以作为协同程序使用 - 在函数中使用 yield 语句即可。
另请注意,当调用 OnPreRender 时,摄像机的渲染目标尚未设置,深度纹理
也尚未渲染。如果您想稍后(例如设置好渲染目标后)执行某些操作,
请尝试使用 CommandBuffer。
另请参阅:OnPostRender。
// This script lets you enable/disable fog per camera. // by enabling or disabling the script in the title of the inspector // you can turn fog on or off per camera.
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { private bool revertFogState = false;
void OnPreRender() { revertFogState = RenderSettings.fog; RenderSettings.fog = enabled; }
void OnPostRender() { RenderSettings.fog = revertFogState; } }