Я обновил свой проект DirectX 10 до DirectX 11 (используя DirectX SDK), и внезапно он вышел из строя на этапе компоновщика, потому что все методы из заголовка d3dx10math, такие как D3DXMatrixMultiply()
или D3DXVec3TransformCoord()
, стали неразрешенными символами.
Некоторые из них происходят из файлов, которые я даже не касался. Все, что я делал, заключалось в изменении заголовков D3DX10 и D3D10 на DX11 и добавлении контекста устройства и соответствующих методов для взаимодействия с шейдерами. Моя настройка проекта также не изменилась, и я include
DirectX и папки lib
в VC++.
Есть ли какая-нибудь подсказка о том, что может быть причиной этого?
Я пропустил #pragma comment(lib, "d3dx10.lib")
. оказывается, вам нужно включить обе библиотеки для DX10 и DX11.