我目前正在写一个深入的DirectX-11引擎在工作,并在我的着色部分工作。我似乎找不到以下所有内容都常见的class:
VertexShader
PixelShader
GeometryShader
HullShader
DomainShader
ComputeShader是否有所有这些类型派生的基级类,或者我是否被大量代码块单独处理?我还没有找到关于这个问题的任何文件。
发布于 2018-12-05 17:27:53
在DirectX 11中,每种着色器类型都是一个不同的接口,使用它们调用的Direct3D函数需要特定的类型。
在大多数渲染情况下,您将只使用VS和PS。
有许多方法来创建一个抽象的着色器。例如,在XNA类设计中,Effect类包含了与Apply一起使用的VS和PS (在抽象中,这可能是渲染效果所需的任何着色器阶段)。见这篇博客文章。
从技术上讲,它们都是从
ID3D11DeviceChild派生出来的,但无论如何,您都需要不同的接口来使用它们。
https://stackoverflow.com/questions/53635330
复制相似问题