перечисление D3D12DDI_RESOURCE_STATES (d3d12umddi.h)
Содержит состояния ресурсов. Барьеры ресурсов позволяют переходить между аппаратными состояниями для соответствующей операции и синхронизировать чтение после записи. Барьеры ресурсов — это существующая концепция В D3D12, которая расширяется для поддержки декодирования видео и видеопроцесса путем добавления этих флагов использования.
Синтаксис
typedef enum D3D12DDI_RESOURCE_STATES {
D3D12DDI_RESOURCE_STATE_COMMON = 0x00000000,
D3D12DDI_RESOURCE_STATE_VERTEX_AND_CONSTANT_BUFFER = 0x00000001,
D3D12DDI_RESOURCE_STATE_INDEX_BUFFER = 0x00000002,
D3D12DDI_RESOURCE_STATE_RENDER_TARGET = 0x00000004,
D3D12DDI_RESOURCE_STATE_UNORDERED_ACCESS = 0x00000008,
D3D12DDI_RESOURCE_STATE_DEPTH_WRITE = 0x00000010,
D3D12DDI_RESOURCE_STATE_DEPTH_READ = 0x00000020,
D3D12DDI_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE = 0x00000040,
D3D12DDI_RESOURCE_STATE_PIXEL_SHADER_RESOURCE = 0x00000080,
D3D12DDI_RESOURCE_STATE_STREAM_OUT = 0x00000100,
D3D12DDI_RESOURCE_STATE_INDIRECT_ARGUMENT = 0x00000200,
D3D12DDI_RESOURCE_STATE_COPY_DEST = 0x00000400,
D3D12DDI_RESOURCE_STATE_COPY_SOURCE = 0x00000800,
D3D12DDI_RESOURCE_STATE_RESOLVE_DEST = 0x00001000,
D3D12DDI_RESOURCE_STATE_RESOLVE_SOURCE = 0x00002000,
D3D12DDI_RESOURCE_STATE_0020_VIDEO_DECODE_READ = 0x00010000,
D3D12DDI_RESOURCE_STATE_0020_VIDEO_DECODE_WRITE = 0x00020000,
D3D12DDI_RESOURCE_STATE_0020_VIDEO_PROCESS_READ = 0x00040000,
D3D12DDI_RESOURCE_STATE_0020_VIDEO_PROCESS_WRITE = 0x00080000,
D3D12DDI_RESOURCE_STATE_0060_VIDEO_ENCODE_READ = 0x00200000,
D3D12DDI_RESOURCE_STATE_0060_VIDEO_ENCODE_WRITE = 0x00800000,
D3D12DDI_RESOURCE_STATE_0062_SHADING_RATE_SOURCE = 0x01000000,
D3D12DDI_RESOURCE_STATE_RAYTRACING_ACCELERATION_STRUCTURE = 0x400000
} ;
Константы
D3D12DDI_RESOURCE_STATE_COMMON Значение: 0x00000000 Общие. |
D3D12DDI_RESOURCE_STATE_VERTEX_AND_CONSTANT_BUFFER Значение: 0x00000001 Буфер вершин и констант. |
D3D12DDI_RESOURCE_STATE_INDEX_BUFFER Значение: 0x00000002 Буфер индексов. |
D3D12DDI_RESOURCE_STATE_RENDER_TARGET Значение: 0x00000004 Отрисовка целевого объекта. |
D3D12DDI_RESOURCE_STATE_UNORDERED_ACCESS Значение: 0x00000008 Неупорядоченный доступ. |
D3D12DDI_RESOURCE_STATE_DEPTH_WRITE Значение: 0x00000010 Запись глубины. |
D3D12DDI_RESOURCE_STATE_DEPTH_READ Значение: 0x00000020 Чтение глубины. |
D3D12DDI_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE Значение: 0x00000040 Ресурс шейдера без пикселей. |
D3D12DDI_RESOURCE_STATE_PIXEL_SHADER_RESOURCE Значение: 0x00000080 Ресурс шейдера пикселей. |
D3D12DDI_RESOURCE_STATE_STREAM_OUT Значение: 0x00000100 Stream. |
D3D12DDI_RESOURCE_STATE_INDIRECT_ARGUMENT Значение: 0x00000200 Косвенный аргумент. |
D3D12DDI_RESOURCE_STATE_COPY_DEST Значение: 0x00000400 Место назначения копирования. |
D3D12DDI_RESOURCE_STATE_COPY_SOURCE Значение: 0x00000800 Копирование источника. |
D3D12DDI_RESOURCE_STATE_RESOLVE_DEST Значение: 0x00001000 Разрешить назначение. |
D3D12DDI_RESOURCE_STATE_RESOLVE_SOURCE Значение: 0x00002000 Разрешение источника. |
D3D12DDI_RESOURCE_STATE_0020_VIDEO_DECODE_READ Значение: 0x00010000 Декодирование видео. Состояние чтения используется для чтения ссылок во время декодирования, а также для входных данных для обработки кадра. Это состояние допустимо только в списке команд декодирования и обработки. |
D3D12DDI_RESOURCE_STATE_0020_VIDEO_DECODE_WRITE Значение: 0x00020000 Запись декодирования видео. Состояние записи используется для целевого объекта декодирования или целевой области кадра процесса. Состояние записи также используется, когда для неконвертированных ссылок включено преобразование декодирования. Это состояние допустимо только в списке команд декодирования и обработки. |
D3D12DDI_RESOURCE_STATE_0020_VIDEO_PROCESS_READ Значение: 0x00040000 Процесс чтения видео. |
D3D12DDI_RESOURCE_STATE_0020_VIDEO_PROCESS_WRITE Значение: 0x00080000 Запись видеопроцесса. |
D3D12DDI_RESOURCE_STATE_0060_VIDEO_ENCODE_READ Значение: 0x00200000 Состояние ресурса чтения закодированного видео. |
D3D12DDI_RESOURCE_STATE_0060_VIDEO_ENCODE_WRITE Значение: 0x00800000 Состояние ресурса записи закодировано видео. |
D3D12DDI_RESOURCE_STATE_0062_SHADING_RATE_SOURCE Значение: 0x01000000 Состояние исходного ресурса скорости заливки. Доступно начиная с WDDM 2.6. |
D3D12DDI_RESOURCE_STATE_RAYTRACING_ACCELERATION_STRUCTURE Значение: 0x400000 Состояние ресурса структуры ускорения трассировки лучей. |
Комментарии
Барьеры ресурсов позволяют переходить между аппаратными состояниями для соответствующей операции и синхронизировать чтение после записи.
Барьеры ресурсов — это существующая концепция В D3D12, которая расширяется для поддержки декодирования видео за счет добавления новых флагов использования. Состояние записи используется для целевого объекта декодирования. Состояние записи также используется, когда для неконвертированных ссылок включено преобразование декодирования.
Требования
Требование | Значение |
---|---|
Минимальная версия UMDF | Direct3D 12.0 |
Верхняя часть | d3d12umddi.h (включая D3d12umddi.h) |