Описание
OnRenderObject вызывается после того, как камера визуализирует сцену.
Это можно использовать для визуализации собственных объектов с помощью Graphics.DrawMeshNow или других функций. Эта функция аналогична OnPostRender, за исключением того, что OnRenderObject вызывается для любого объекта, имеющего сценарий с функцией; независимо от того, подключен он к камере или нет. Вы должны использовать эту функцию только для рисования, а не для изменения каких-либо высокоуровневых состояний рендеринга.
Учтите, что эта функция может повлиять на производительность, поскольку она запускается для каждого игрового объекта со сценарием, использующим этот обратный вызов.
using System.Collections;
using UnityEngine;
public class ExampleClass : MonoBehaviour
{
public Mesh mainMesh;
public Mesh miniMapMesh;
void OnRenderObject()
{
// Визуализировать различные сетки для объекта в зависимости от того,
// просматривается основная камера или камера миникарты.
if (Camera.current.name == "MiniMapcam")
{
Graphics.DrawMeshNow(miniMapMesh, transform.position, transform.rotation);
}
else
{
Graphics.DrawMeshNow(mainMesh, transform.position, transform.rotation);
}
}
}