DirectX - Pixel Shader 3.0无法正常工作

时间:2015-06-10 01:46:54

标签: c# directx shader

我一直在研究3D项目已经有一段时间了,要从引擎中显示模型文件。我在C#中编写它并使用Managed DirectX包装器(我知道它已经过时并且已弃用,但我有自己的理由使用它)。我需要编写一个像素着色器来进行纹理混合和光照,但ps 2.0对我的着色器来说太有限了,我需要使用ps 3.0。它可以在软件渲染(DeviceType设置为Reference)上正常工作,而在带有ps 2.0的硬件上也可以正常工作,但是当我使用硬件加速时,像素着色器就会停止工作。做一些研究,我发现我的GPU(英特尔GMA 950)仅支持ps 2.0,好吧这一定是问题。问题是,我让一些朋友测试我的应用程序,他们都遇到了同样的问题(其中一个甚至有一个本应支持SM 5.0的Geforce GTX650)。像素着色器不做任何事情,模型只保留在顶点颜色。

Pixel Shader在硬件中是否有特殊需要?

1 个答案:

答案 0 :(得分:0)

我解决了重新安装SDK并将Microsoft.Direct3DX.dll更改为1。0。11。11(2006年4月)版本的问题,现在它可以在功能强大的视频卡上使用ps 3.0。谢谢你们所有人。