Во время компиляции я получаю следующую ошибку:
RAT_RendererDX9.obj: ошибка LNK2019: неразрешенный внешний символ _Direct3DCreate9 @ 4, на который ссылается функция «public: void __thiscall RAT_ENGINE :: RAT_RendererDX9 :: Init (класс RAT_ENGINE :: RAT_WindowManager *)»? @Z)
Единственное место, которое я использую Direct3DCreate9
в моем Init()
функция Renderer, которая имеет следующий код:
void RAT_RendererDX9::Init(RAT_WindowManager* argWMan)
{
wMan = argWMan;
g_pD3D = (LPDIRECT3D9)Direct3DCreate9( D3D_SDK_VERSION );
D3DPRESENT_PARAMETERS d3dpp;
ZeroMemory( &d3dpp, sizeof( d3dpp ) );
d3dpp.Windowed = TRUE;
d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
d3dpp.BackBufferFormat = D3DFMT_UNKNOWN;
g_pD3D->CreateDevice( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd,
D3DCREATE_SOFTWARE_VERTEXPROCESSING,
&d3dpp, &g_pd3dDevice );
}
Откуда эта ошибка и как я могу ее исправить?
Я пробовал другие ответы на LNK2019, но они не решили мою проблему.
Мне пришлось добавить файл d3d9.lib в дополнительные зависимости моего компоновщика, как сказал GSerg.
Других решений пока нет …