首先,我完全不了解DirectX11。随着Windows 8发布,Microsoft已经停用了Effects和D3DX,因此我想使用替代Effects的工具。然而,我不知道如何做到这一点,我只知道每个HLSL文件必须有一个特定着色器(顶点、像素、计算等)的入口点。基本上就是这样,那么,有人知道没有Effects的hlsl着色器的好教程吗?或者有人可以告诉我他们是如何做到的吗?
提前感谢!
首先,我完全不了解DirectX11。随着Windows 8发布,Microsoft已经停用了Effects和D3DX,因此我想使用替代Effects的工具。然而,我不知道如何做到这一点,我只知道每个HLSL文件必须有一个特定着色器(顶点、像素、计算等)的入口点。基本上就是这样,那么,有人知道没有Effects的hlsl着色器的好教程吗?或者有人可以告诉我他们是如何做到的吗?
提前感谢!
http://www.directxtutorial.com/Lesson.aspx?lessonid=111-4-5
这是DirectX 11.1教程的一部分,与Windows 8有关。所以你可以跟随所有教程来学习DX 11.1中你仍不理解的部分。//dev is the Device pointer
dev->CreateVertexShader(VSFile->Data, VSFile->Length, nullptr, &vertexshader);
dev->CreatePixelShader(PSFile->Data, PSFile->Length, nullptr, &pixelshader);
然后你可以这样设置活动着色器:
//devcon is the DeviceContext pointer
devcon->VSSetShader(vertexshader.Get(), nullptr, 0);
devcon->PSSetShader(pixelshader.Get(), nullptr, 0);
我希望这能澄清这个问题。