Unity 6.3
0 онлайн 69 гостей 3 в системе
Вход

RenderTexture.GetTemporary

Declaration

public static RenderTexture GetTemporary(RenderTextureDescriptor desc);
public static RenderTexture GetTemporary(int width, int height, int depthBuffer = 0, RenderTextureFormat format = RenderTextureFormat.Default, RenderTextureReadWrite readWrite = RenderTextureReadWrite.Default, int antiAliasing = 1, RenderTextureMemoryless memorylessMode = RenderTextureMemoryless.None, VRTextureUsage vrUsage = VRTextureUsage.None, bool useDynamicScale = false);

Параметры

Параметр Описание
ширина Ширина в пикселях.
высота Высота в пикселях.
depthBuffer Глубина буфера битов (0, 16 или 24). Обратите внимание, что только 24-битная глубина имеет буфер шаблона.
формат Формат отображаемой текстуры.
readWrite Режим преобразования цветового пространства.
antiAliasing Число образцов сглаживания для хранения в текстуре. Допустимые значения 1, 2, 4 и 8. Выводит исключение, если передано любое другое значение.
memorylessMode Режим отображения текстуры без памяти.
vrUsage Как Unity использует RenderTexture в качестве текстуры глаза VR. По умолчанию это VRTextureUsage.None.
useDynamicScale Определяет, Unity масштабирует отображаемую текстуру с помощью динамическое разрешениеПо умолчанию false.
снижение Используйте этот RenderTextureDesc для настройки при создании временного RenderTexture.

Описание

Выделить временную текстуру рендеринга.

Эта функция оптимизирована для тех случаев, когда вам нужно быстро RenderTexture чтобы сделать некоторые временные расчеты. Отпустите его, используя ReleaseTemporary как только вы закончите с ним, так что другой вызов может начать повторно использовать его, если это необходимо.

Внутренние Unity хранит пул временных текстур рендеринга, поэтому вызов GetTemporary чаще всего возвращает уже созданную текстуру (если размер и формат соответствуют). Эти временные текстуры рендеринга фактически уничтожаются, когда они не используются в течение нескольких кадров.

Если вы выполняете серию постпроцессорных "блитов", то для повышения производительности лучше всего получать и выпускать временную текстуру рендеринга для каждого блита, вместо того, чтобы получать одну или две текстуры рендеринга заранее и повторно использовать их. Это особенно полезно для мобильных (на основе плиток) и многопользовательских игр.GPU системы: GetTemporary будет внутренней сделать DiscardContents вызов, который помогает избежать дорогостоящих операций по восстановлению предыдущего содержимого текстуры рендеринга.

Вы не можете полагаться на какое-либо конкретное содержание RenderTexture вы получаете от GetTemporary функция. Это может быть мусор, или это может быть очищено до какого-то цвета, в зависимости от платформы.

Дополнительные ресурсы: ReleaseTemporary.