效果系统接口 (Direct3D 11)
效果系统定义了多个用于管理效果状态的接口。 有两种类型的接口:运行时用于呈现效果的接口和反射接口,用于获取和设置效果变量。
效果运行时接口
使用运行时接口呈现效果。
运行时接口 | 说明 |
---|---|
ID3DX11Effect | 用于呈现的一个或多个组和技术的集合。 |
ID3DX11EffectPass | 状态分配的集合。 |
ID3DX11EffectTechnique | 一个或多个传递的集合。 |
ID3DX11EffectGroup | 一个或多个技术的集合。 |
效果反射接口
反射在效果系统中实现,以支持读取 (和写入) 效果状态。 可通过多种方式访问效果变量。
设置效果状态组
使用这些接口获取和设置一组状态。
反射接口 | 说明 |
---|---|
ID3DX11EffectBlendVariable | 获取并设置混合状态。 |
ID3DX11EffectDepthStencilVariable | 获取和设置深度模具状态。 |
ID3DX11EffectRasterizerVariable | 获取并设置光栅器状态。 |
ID3DX11EffectSamplerVariable | 获取并设置采样器状态。 |
设置效果资源
使用这些接口获取和设置资源。
反射接口 | 说明 |
---|---|
ID3DX11EffectConstantBuffer | 访问纹理缓冲区或常量缓冲区中的数据。 |
ID3DX11EffectDepthStencilViewVariable | 访问深度模具资源中的数据。 |
ID3DX11EffectRenderTargetViewVariable | 访问呈现器目标中的数据。 |
ID3DX11EffectShaderResourceVariable | 访问着色器资源中的数据。 |
ID3DX11EffectUnorderedAccessViewVariable | 在无序访问视图中访问数据。 |
设置其他效果变量
使用这些接口按变量类型获取和设置状态。
反射接口 | 说明 |
---|---|
ID3DX11EffectClassInstanceVariable | 获取类实例。 |
ID3DX11EffectInterfaceVariable | 获取并设置接口。 |
ID3DX11EffectMatrixVariable | 获取并设置矩阵。 |
ID3DX11EffectScalarVariable | 获取并设置标量。 |
ID3DX11EffectShaderVariable | 获取着色器变量。 |
ID3DX11EffectStringVariable | 获取并设置字符串。 |
ID3DX11EffectType | 获取变量类型。 |
ID3DX11EffectVectorVariable | 获取并设置向量。 |
所有反射接口都派生自 ID3DX11EffectVariable。
相关主题