Directx 11.1中D3DXCOLOR结构的新等价物?

时间:2012-12-26 20:57:20

标签: windows sdk directx

我在查找D3DXCOLOR结构时遇到问题,似乎在DirectX 11.1(d3d11_1.h)中不再存在。 我已经寻找了相同的但没有运气。有人可以帮我吗?如果它发生了很大变化,你能告诉我如何使用它吗?

4 个答案:

答案 0 :(得分:9)

使用XMCOLOR。它位于DirectXPackedVector.h

答案 1 :(得分:7)

我是一个完全的菜鸟,我也有他们使用它的示例教程的问题。 经过几个小时搜索网。 击鼓 多田....

以下是我在代码中转换它的方法

旧代码

// 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);

答案 2 :(得分:0)

D3DX或DirectX Utility库已被删除,而Microsoft希望您使用XNA Math Library对应物(使用SSE和其他东西,但在我的情况下,它有时会崩溃,所以我停止使用它)

答案 3 :(得分:0)

如何宣布

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});