public static bool willCurrentFrameRender;
Описание
True, если будет отображаться текущий кадр.
using UnityEngine;
using UnityEngine.Rendering;
// В этом примере показано, как определить, будет ли текущий кадр отображаться на экране.
public class Example : MonoBehaviour
{
void Start()
{
QualitySettings.vSyncCount = 0;
Application.targetFrameRate = 60;
OnDemandRendering.renderFrameInterval = 3;
}
// Вывод будет:
//
// Будет ли отображаться этот кадр? false
// Будет ли отображаться этот кадр? false
// Будет ли отображаться этот кадр? true
// Будет ли отображаться этот кадр? false
// Будет ли отображаться этот кадр? false
// Будет ли отображаться этот кадр? true
void Update()
{
Debug.Log("Will this frame render? " + OnDemandRendering.willCurrentFrameRender);
if (!OnDemandRendering.willCurrentFrameRender)
{
// Кадры, которые не визуализируются, могут иметь дополнительные циклы процессора для процессов, которые в противном случае были бы слишком обременительны.
// Например: дорогостоящие математические операции, создание префабов или загрузка ресурсов.
}
}
}