3Dシミュレーションプロジェクトの構築にDirectXMathを使用しています
void SetConstantBuffer(ID3D11DeviceContext*_device_context, DirectX::XMMATRIX _world, DirectX::XMMATRIX _view, DirectX::XMMATRIX _projection)
{
ConstantBuffer const_buffer;
const_buffer.View = DirectX::XMMatrixTranspose(_world);
const_buffer.World = DirectX::XMMatrixTranspose(_view);
const_buffer.Projection = DirectX::XMMatrixTranspose(_projection);
_device_context->UpdateSubresource(m_const_buffer, 0, NULL, &const_buffer, 0, 0);
}
おそらくDirectXMath内のSIMDフラグでこの種のコンパイラエラーが発生します。
エラーC2719:'_world':__declspec(align('16'))の正式なパラメーターは整列されません
エラーC2719:'_view':__declspec(align('16'))の正式なパラメーターは整列されません
エラーC2719 :'_projection':__declspec(align('16'))を含む正式なパラメーターは整列されません
DirectX :: XMFLOAT4X4に変換せずに他の方法はありますか?
ちなみに、私はx86マシンを使用しており、Visual Studio2012Expressでコンパイルしています。