ScalableBufferManager
класс в UnityEngine
Выполнено в:UnityEngine.CoreModule
Описание
Масштабирует текстуры для поддержки динамического разрешения, если целевая платформа/графика API поддерживает его.
ScalableBufferManager класс отвечает за масштабирование всех текстур рендеринга, которые вы пометили как DynamicallyScalable когда ResizeBuffers Все текстуры рендеринга, помеченные как DynamicallyScalable масштабируются по коэффициенту масштаба ширины и высоты. Масштаб контролируется через коэффициент масштаба, а не с помощью конкретного значения ширины и высоты, потому что даже если рендируемые текстуры имеют разные размеры, они должны быть масштабированы по общему коэффициенту.
Текущая реализация поддерживает только дискретные масштабирующие факторы в диапазоне 0.05 и 1.0 в шагах 0.05, чтобы быть последовательными на всех платформах. Unity автоматически выбирает ближайшие поддерживаемые масштабирующие факторы. Вы можете получить доступ к выбранным масштабирующим факторам с помощью ScalableBufferManager.widthScaleFactor и ScalableBufferManager.heightScaleFactor.
Масштабированные размеры рассчитываются следующим образом:
ширина = ceil(renderTexture.width * ScalableBufferManager.widthScaleFactor) высота = ceil(renderTexture.height * ScalableBufferManager.heightScaleFactor)
Текстуры рендеринга, которые вы отметили как DynamicallyScalableExplicit не масштабируются при помощи вызова ResizeBuffers но призывом к RenderTexture.ApplyDynamicScale. Масштабирование подлежит точно такому же процессу, как ResizeBuffers.
Статические свойства
| Свойство | Описание |
|---|---|
| heightScaleFactor | Коэффициент масштаба высоты для управления динамическим разрешением. |
| widthScaleFactor | Коэффициент масштаба ширины для управления динамическим разрешением. |
Статические методы
| Метод | Описание |
|---|---|
| ResizeBuffers | Функция изменения размера всех буферов, помеченных как DynamicallyScalable. |