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