Представления

Термин "представление" используется для обозначения данных в требуемом формате. Например, "представление буфера констант" (CBV) — это данные буфера констант в правильном формате. В этом разделе описаны наиболее распространенные и полезные представления.

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

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

Представление буфер констант (CBV)

Буферы констант содержат постоянные данные шейдера. Их роль в том, что данные сохраняются и остаются доступными любому шейдеру графического процессора до тех пор, пока данные не нужно будет менять.

Представление буфера вершин (VBV) и представление буфера индексов (IBV)

Буфер вершин содержит данные для списка вершин. Данные по каждой вершине могут включать в себя положение, цвет, вектор нормали, координаты текстуры и т. д. Буфер индексов содержит целочисленные индексы (смещения) в буфере вершин и используется для определения и отрисовки объекта, состоящего из подмножества полного списка вершин.

Представление ресурсов шейдера (SRV) и представления неупорядоченного доступа (UAV)

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

Образец

Дискретизация — это процесс чтения входных значений из текстуры или другого ресурса. «Дискретизатор» — любой объект, который считывает данные из ресурсов.

Представление целевого объекта отрисовки (RTV)

Целевые объекты отрисовки дают возможность визуализировать сцену во временном промежуточном буфере, а не в заднем буфере для отрисовки на экране. Эта функция позволяет использовать сложную сцену, которая может отрисовываться — например, в качестве текстуры отражения или другого элемента в графическом конвейере, или же для добавления дополнительных эффектов пиксельного шейдера к сцене перед отрисовкой.

Представления трафарета глубины (DSV)

Представление трафарета глубины предоставляет формат и буфер для хранения сведений о глубине и трафарете. Буфер глубины используется для удаления отображаемых пикселей, которые не будут видны наблюдателю, так как они закрыты более близким объектом. Буфер трафарета можно использовать для удаления всех отображаемых пикселей за пределами заданной области.

Представление выходного потока (SOV)

Представления выходного потока позволяют передавать полученную от шейдеров вершин, тесселяции и геометрии информацию о вершинах обратно приложению для дальнейшего использования. Например, объект, который был искажен этими шейдерами, можно записать обратно в приложение для предоставления более точных входных данных для физического или другого модуля. Однако на практике представления выходного потока — это редко используемая функция графического конвейера.

Упорядоченное представление средства программной прорисовки (ROV)

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

 

Руководство по обучению графике Direct3D