OnWillRenderObject is called for each camera if the object is visible and not a UI element.
The function is not called if the MonoBehaviour is disabled.
The function is called during the culling process just before rendering each culled object.
For usage in a proper context, see the script Water.cs
in Assets->Import Package->Effects
Note that Camera.current will be set to the camera that will render the object.
Note: This has no effect when called from a UI element.
var rend: Renderer;
function Start() { rend = GetComponent.<Renderer>(); }
function OnWillRenderObject() { // Tint the object red for identification if it is // being shown on the overhead mini-map view. if (Camera.current.name == "MiniMapcam") { rend.material.color = Color.red; } else { rend.material.color = Color.white; } }
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { public Renderer rend; void Start() { rend = GetComponent<Renderer>(); } void OnWillRenderObject() { if (Camera.current.name == "MiniMapcam") rend.material.color = Color.red; else rend.material.color = Color.white; } }
Also, this is called multiple times per frame.