OnDemandRendering
класс в UnityEngine.Rendering
Выполнено в:UnityEngine.CoreModule
Описание
Используйте класс OnDemandRendering, чтобы управлять скоростью отрисовки приложения и запрашивать сведения о ней независимо от всех прочих подсистем (физики, ввода, анимации).
Если использовать это с Optimized Frame Pacing на Android, и если вы также используете OpenGL ES, Оптимизированная кадровая скорость наиболее эффективна, когда частота кадров составляет 20, 30 или 60 кадров в секунду. Чтобы убедиться, что вы рендируете на одной из этих частот кадров, используйте OnDemandRendering.effectiveRenderframerate.
Vulkan менее строгая и допускает большее число действительных частот кадров.
Если вы запросите несовместимую частоту кадров, приложение отобразит изображение с максимально возможной частотой кадров. renderFrameInterval является слишком высоким, приложение может перестать отвечать, потому что время между рендируемыми кадрами также становится слишком высоким.
Примечание о выполнении событий:
Диаграмма на странице Руководства Порядок выполнения функций событий Однако, события, специфичные для отображения, включая события, связанные с Scene рендеринг, рендеринг, GUI рендеринга, и Конец кадровых секций, не происходит во время кадров, которые Unity не отображается (когда OnDemandRendering.willCurrentFrameRender является ложным).
Статические свойства
| Свойство | Описание |
|---|---|
| effectiveRenderFrameRate | Текущая предполагаемая скорость отображения в кадрах в секунду округлена до ближайшего целого числа. |
| renderFrameInterval | Получить или установить текущий интервал частоты кадров. Чтобы вернуть отображение к значению Application.targetFrameRate или QualitySettings.vSyncCount, установите это значение на 0 или 1. |
| willCurrentFrameRender | True, если будет отображаться текущий кадр. |