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


Интерфейсы системы эффектов (Direct3D 11)

Система эффектов определяет несколько интерфейсов для управления состоянием эффекта. Существует два типа интерфейсов: интерфейсы, используемые средой выполнения для отрисовки эффекта, и интерфейсы отражения для получения и настройки переменных эффекта.

Интерфейсы среды выполнения эффектов

Используйте интерфейсы среды выполнения для отрисовки эффекта.

Интерфейсы среды выполнения Описание
ID3DX11Effect Коллекция из одной или нескольких групп и методов для отрисовки.
ID3DX11EffectPass Коллекция назначений состояния.
ID3DX11EffectTechnique Коллекция из одного или нескольких проходов.
ID3DX11EffectGroup Коллекция из одного или нескольких методов.

 

Интерфейсы отражения эффектов

Отражение реализуется в системе эффектов для поддержки чтения (и записи) состояния эффекта. Существует несколько способов доступа к переменным эффекта.

Настройка групп состояния эффекта

Используйте эти интерфейсы для получения и задания группы состояний.

Интерфейсы отражения Описание
ID3DX11EffectBlendVariable Получение и установка состояния наложения.
ID3DX11EffectDepthStencilVariable Получение и установка состояния трафарета глубины.
ID3DX11EffectRasterizerVariable Получение и установка состояния растеризатора.
ID3DX11EffectSamplerVariable Получение и установка состояния выборки.

 

Настройка ресурсов эффектов

Используйте эти интерфейсы для получения и задания ресурсов.

Интерфейсы отражения Описание
ID3DX11EffectConstantBuffer Доступ к данным в буфере текстуры или буфере констант.
ID3DX11EffectDepthStencilViewVariable Доступ к данным в ресурсе трафарета глубины.
ID3DX11EffectRenderTargetViewVariable Доступ к данным в целевом объекте отрисовки.
ID3DX11EffectShaderResourceVariable Доступ к данным в ресурсе шейдера.
ID3DX11EffectUnorderedAccessViewVariable Доступ к данным в представлении неупорядоченного доступа.

 

Задание других переменных эффекта

Используйте эти интерфейсы для получения и задания состояния по типу переменной.

Интерфейсы отражения Описание
ID3DX11EffectClassInstanceVariable Получение экземпляра класса.
ID3DX11EffectInterfaceVariable Получение и настройка интерфейса.
ID3DX11EffectMatrixVariable Получение и установка матрицы.
ID3DX11EffectScalarVariable Получение и установка скалярного значения.
ID3DX11EffectShaderVariable Получение переменной шейдера.
ID3DX11EffectStringVariable Получение и установка строки.
ID3DX11EffectType Получение типа переменной.
ID3DX11EffectVectorVariable Получение и установка вектора.

 

Все интерфейсы отражения являются производными от ID3DX11EffectVariable.

Эффекты (Direct3D 11)

Руководство по программированию для Direct3D 11