Поделиться через


Размещение плиток в области потокового ресурса

При создании потокового ресурса измерения, размер элемента формата и количество текстур и(или) фрагментов массива (если применимо) определяют количество плиток, необходимых для резервирования всей области поверхности. Структура пикселей/байтов в плитках определяется реализацией. Число пикселей, помещающихся в плитке, зависит от размера элемента формата, фиксировано и одинаково как при использовании стандартного преобразования ссылок при перемещении данных с внешнего устройства, так и без него.

Число плиток, которые будут использоваться при определенном размере поверхности и ширине элемента формата, можно точно определить и спрогнозировать на основе таблиц в следующих разделах. Для ресурсов, содержащих MIP-карты, а также в случаях, когда размеры поверхности не заполняют плитку, существуют ограничения. См. раздел Упаковка MIP-карт.

Разные потоковые ресурсы могут указывать на идентичную память с различными форматами, если приложения не зависят от результатов записи в память в одном формате и считывания в другом. Но приложения могут зависеть от результатов записи в память в одном формате и считывания в другом, если эти форматы относятся к одному семейству (то есть если у них один нетипизированный родительский формат). Например, DXGI_FORMAT_R8G8B8A8_UNORM и DXGI_FORMAT_R8G8B8A8_UINT совместимы друг с другом, но не с DXGI_FORMAT_R16G16_UNORM.

Исключением является тот случай когда переход данных из одного формата с присвоением псевдонима другого четко определено: если все биты плитки содержат нули, эту плитку можно использовать с любым форматом, интерпретирующим это содержимое памяти как нули (независимо от структуры памяти). Таким образом, плитку можно очистить, чтобы 0x00 с форматом DXGI_FORMAT_R8_UNORM, а затем использовать с таким форматом, как DXGI_FORMAT_R32G32_FLOAT и будет отображаться содержимое по-прежнему (0.0f,0.0f).

Структура данных в плитке не зависит от сопоставления плитки в ресурсе в целом. Например, плитку можно повторно использовать одновременно в разных расположениях поверхности с единым поведением.

В этом разделе

Раздел Описание

Размещение на плитках вложенных ресурсов Texture2D и Texture2DArray

В этих таблицах показано, как фрагментируются подресурсы Texture2D и Texture2DArray .

Размещение на плитках вложенного ресурса Texture3D

В этой таблице показано, как фрагментируются подресурсы Texture3D .

Плитки в буфере

Ресурс буфера делится на плитки размером 64 КБ с пустым пространством в последней плитке, если размер не кратен 64 КБ.

Упаковка MIP-карт

Некоторое количество MIP-карт (для каждого фрагмента массива) можно упаковывать в определенное число плиток в зависимости от размеров потокового ресурса, формата, количества MIP-карт и фрагментов массива.

 

Создание потоковых ресурсов