Direct3D 10 图形) (着色器接口

本部分包含有关以下着色器接口的信息:

其中每个着色器接口都管理已编译的着色器。 接口在编译着色器时创建,然后传递给需要访问已编译着色器的各种 API;例如,将着色器绑定到管道阶段或获取着色器签名时。

Pipeline-Stage接口 说明
ID3D10GeometryShader 接口 geometry-shader 在 geometry-shader 阶段中实现每个基元处理。
ID3D10PixelShader 接口 像素着色器在像素着色 器阶段中实现每像素处理。
ID3D10VertexShader 接口 顶点着色器在顶点着色器阶段中实现每个 顶点处理。

 

着色器反射接口允许应用程序在设计/创作时检查着色器的内容。 着色器反射对于在运行时设置变量没有用,因为它是着色器数据的镜像,因此不支持设置数据的方法。

Shader-Reflection接口 说明
ID3D10ShaderReflection 接口 一个 COM 接口,用于在作者时从编译的着色器读取信息。
ID3D10ShaderReflectionConstantBuffer 接口 用于获取着色器反射 constant-buffer 接口的帮助程序接口。
ID3D10ShaderReflectionType 接口 用于获取着色器反射类型接口的帮助程序接口。
ID3D10ShaderReflectionVariable 接口 用于获取着色器反射变量接口的帮助程序接口。
ID3D10ShaderResourceView 接口 一个着色器反射接口,用于从着色器资源视图读取信息。

 

着色器反射 API 实现一个 COM 着色器反射接口 (ID3D10ShaderReflection 接口) 和多个非 COM 帮助程序接口 (其余接口) 。 ID3D10ShaderReflection 接口 是在创建着色器反射对象时创建的。 它遵循标准 COM 规则;创建接口会增加引用计数,并且必须在不再需要接口时释放该接口。 其余的着色器反射接口不是从 IUnknown 继承的帮助程序接口。 这意味着它们在创建时不会更改任何引用计数,并且无需在完成引用计数时销毁它们。

着色器参考