我无法找到该D3DXCOLOR
结构,它似乎不再存在于 DirectX 11.1 ( d3d11_1.h
) 中。我一直在寻找它的平等,但没有运气。有人可以帮我吗?如果它发生了很大变化,你能告诉我如何使用它吗?
问问题
5884 次
4 回答
10
我对此完全是个菜鸟,我也遇到了他们使用它的示例教程的问题。因此,经过数小时的网络搜索。鼓乐多田....
这是我在代码中转换它的方式
旧代码
// clear the back buffer to a deep blue
devcon->ClearRenderTargetView(backbuffer, D3DXCOLOR{ 0.0f, 0.2f, 0.4f, 1.0f };
新代码
// clear the back buffer to a deep blue
float color[4] = { 0.0f, 0.2f, 0.4f, 1.0f };
devcon->ClearRenderTargetView(backbuffer, color);
于 2013-03-10T16:18:27.483 回答
10
使用 XMCOLOR。它位于 DirectXPackedVector.h
于 2013-07-11T12:38:42.450 回答
2
声明一次怎么样
using RGBA = float[4]; //c++11
或者
typedef float RGBA[4]; //pre-c++11
然后像这样在需要的地方使用
devcon->ClearRenderTargetView(backbuffer, RGBA{0.0f, 0.2f, 0.4f, 1.0f});
于 2015-06-30T23:33:09.970 回答
0
D3DX 或 DirectX 实用程序库已被删除,微软希望您使用 XNA 数学库对应物(使用 SSE 和东西,但在我的情况下,它有时会崩溃,所以我停止使用它)
于 2013-07-11T07:47:55.580 回答