reckfellENGINE

TextureStreaming

Регулирование динамической текстуры мипкартирования для оптимизации использования VRAM.

На этой странице
class TextureStreamingReckfellSharp

Регулирование динамической текстуры мипкартирования для оптимизации использования VRAM.

:: TextureStreaming Синглтон управляет динамической погрузкой и разгрузкой уровней мипкарты текстуры на основе того, что видно в нынешней системе. Это позволяет проектам с большим количеством текстур значительно сократить использование VRAM при сохранении визуального качества видимых текстуров. Texture С помощью ретрансляции происходит анализ обратной связи теневых устройств для определения того, какие текстуры активно используются и при каком разрешении они отображаются. Тексты, которые удалены от камеры или не видны в настоящее время, разгружаются на мипкартах с более высоким разрешением, а текстура, помещаемая вблизи, загружается с более высокими разрешениями. Система включает в себя функцию бюджета памяти, которая автоматически управляет разрешением текстуры, чтобы оставаться в пределах установленного предела VRAM. Когда бюджет превышается, система определяет приоритетность текстов, исходя из того, как они использовались в последнее время и сколько экранного пространства они занимают. Примечание: Texture В конфигурации проекта (настройка проекта) должна быть включена система потоков (настройка проекта)ProjectSettings.rendering/textures/streaming/enabled) и текстуры должны быть импортированы с помощью ретрансляционной опоры для использования этой функции.

Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.

Свойства4

MaxLodOverrideСвойство
# MaxLodOverride
C#
public static int MaxLodOverride { get; set; }

Отменяет максимальный уровень LOD (мипкарта), который может быть загружен для потоковых текстуров в рабочее время. Нижние значения позволяют получать текстуры с более высоким разрешением. 0 (полное разрешение) 13 (самое низкое разрешение). Значения, выходящие за этот диапазон, очищают перестановку и используют по умолчанию от ProjectSettings.rendering/textures/streaming/max_lod; когда блокировка не активирована, это имущество возвращается -1.

MemoryBudgetMbOverrideСвойство
# MemoryBudgetMbOverride
C#
public static uint MemoryBudgetMbOverride { get; set; }

При превышении бюджета система уменьшает разрешение текстуры, чтобы не выходить за рамки. UINT32_MAX (4294967295, максимальная неподписанная 32-битная целая) отключает блокировку и использует по умолчанию от ProjectSettings.rendering/textures/streaming/memory_budget_mb.

MinLodOverrideСвойство
# MinLodOverride
C#
public static int MinLodOverride { get; set; }

Превышение минимального уровня LOD (мипкартический уровень), который начинается при загрузке. Более высокие значения приводят к снижению первоначальной разрешающей способности. 0 (полное разрешение) 13 (самое низкое разрешение). Значения, выходящие за этот диапазон, очищают перестановку и используют по умолчанию от ProjectSettings.rendering/textures/streaming/min_lod; когда блокировка не активирована, это имущество возвращается -1.

SingletonСвойство
# Singleton
C#
public static TextureStreamingInstance Singleton { get; }

Методы8

FlushTextureStreamingvoid
# FlushTextureStreaming
C#
public static void FlushTextureStreaming();

Принуждает все очерченные в настоящее время операции по потоку текстуры к немедленному завершению, обходя нормальный постепенный переход и I/O дросселирование. Это незамедлительно загружает или разгрузит мипкарты уровней для достижения целевого разрешения для всех регулируемых текстуров, затем излучает TextureStreaming.FlushCompleted Сигнал. Полезный при загрузке экранов или телепортации игрока для обеспечения того, чтобы все текстуры находились на оптимальном разрешении без видимого перехода.

GetMaxLodOverrideint
# GetMaxLodOverride
C#
public static int GetMaxLodOverride();
Возвращает int
GetMemoryBudgetBytesUsedulong
# GetMemoryBudgetBytesUsed
C#
public static ulong GetMemoryBudgetBytesUsed();

Возвращает текущий VRAM использование потоковых текстуров в байтах. Это представляет собой общую память, потребляемую всеми ручными текстурами на их нынешнем загруженном уровне mipmap.

Возвращает ulong
GetMemoryBudgetMbOverrideuint
# GetMemoryBudgetMbOverride
C#
public static uint GetMemoryBudgetMbOverride();
Возвращает uint
GetMinLodOverrideint
# GetMinLodOverride
C#
public static int GetMinLodOverride();
Возвращает int
SetMaxLodOverridevoid
# SetMaxLodOverride
C#
public static void SetMaxLodOverride(int maxLod);
Параметры
ИмяТипПо умолчанию
maxLodint—
SetMemoryBudgetMbOverridevoid
# SetMemoryBudgetMbOverride
C#
public static void SetMemoryBudgetMbOverride(uint mb);
Параметры
ИмяТипПо умолчанию
mbuint—
SetMinLodOverridevoid
# SetMinLodOverride
C#
public static void SetMinLodOverride(int minLod);
Параметры
ИмяТипПо умолчанию
minLodint—

Сигналы и события1

FlushCompletedСобытие
# FlushCompleted
C#
public static event Action FlushCompleted;

Принимаются после завершения операции по смыву текстры TextureStreaming.FlushTextureStreaming был назван, и все регулируемые текстуры достигли целевых резолюций.

Документация Reckfell EngineНаверх ↑
БЫСТРЫЙ ПЕРЕХОДНачало работыEntity и иерархияC# & .NET 10Сцены и префабы
Руководства и полный API Reckfell K
reckfellENGINE
RECKFELL ACCOUNT

Вход в аккаунт

Войдите в аккаунт Reckfell.

Один аккаунт для всей платформы Reckfell.