Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 将XMMATRIX转换为D3DXMATRIX_C++_Directx_D3dx - Fatal编程技术网

C++ 将XMMATRIX转换为D3DXMATRIX

C++ 将XMMATRIX转换为D3DXMATRIX,c++,directx,d3dx,C++,Directx,D3dx,对于我的大学项目,我必须结合讲师提供的两个不同框架的大部分,但问题是一个讲师使用XMMATRIX,另一个使用D3DXMATRIX。有没有一种方法可以在不重写大多数框架的情况下在两者之间进行转换 我尝试过这个问题中的建议: 但这没有帮助。我需要将D3DXMATRIX从XMMATRIX传递到特定的着色器类。将XMMATRIX存储在XMFLOAT4X4中并进行转换不起作用,它只是告诉我从float到d3dx4矩阵没有合适的转换 XMMATRIX worldMatrix, viewMatrix, pro

对于我的大学项目,我必须结合讲师提供的两个不同框架的大部分,但问题是一个讲师使用XMMATRIX,另一个使用D3DXMATRIX。有没有一种方法可以在不重写大多数框架的情况下在两者之间进行转换

我尝试过这个问题中的建议:

但这没有帮助。我需要将D3DXMATRIX从XMMATRIX传递到特定的着色器类。将XMMATRIX存储在XMFLOAT4X4中并进行转换不起作用,它只是告诉我从float到d3dx4矩阵没有合适的转换

XMMATRIX worldMatrix, viewMatrix, projectionMatrix;
XMFLOAT4X4 wMatrix, vMatrix, pMatrix;

m_Direct3D->GetWorldMatrix(worldMatrix);
m_Camera->GetViewMatrix(viewMatrix);
m_Direct3D->GetProjectionMatrix(projectionMatrix);

XMStoreFloat4x4(&wMatrix, worldMatrix);
XMStoreFloat4x4(&vMatrix, viewMatrix);
XMStoreFloat4x4(&pMatrix, projectionMatrix);

m_Tshader->Render(m_Direct3D->GetDeviceContext(), m_Terrain->GetIndexCount(), (D3DXMATRIX)wMatrix, (D3DXMATRIX)vMatrix, (D3DXMATRIX)pMatrix,
m_Light->GetAmbientColour, m_Light->GetDiffuseColour, m_Light->GetDirection);
谢谢

(D3DXMATRIX)wMatrix
将无法工作

如果函数按值获取D3DXMATRIX,则可以执行
*重新解释(&wMatrix)


如果函数采用了
D3DXMATRIX*
,则可以执行
重新解释\u cast(&wMatrix)

类似问题。已更新问题
,但这没有帮助。那么你做错了什么。请参阅:。发布相关的和当前的问题描述,以及仔细复制粘贴的错误消息。