在编译期间,我收到以下错误:
RAT_RendererDX9.obj:错误LNK2019:未解析的外部符号_Direct3DCreate9 @ 4在函数“public:void __thiscall RAT_ENGINE :: RAT_RendererDX9 :: Init(class RAT_ENGINE :: RAT_WindowManager *)”中引用(?Init @ RAT_RendererDX9 @ RAT_ENGINE @@ QAEXPAVRAT_WindowManager @ @@ 2 Z)
我使用Direct3DCreate9
的唯一地方是我在呈现器的Init()
函数中,它具有以下代码:
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的其他答案,但他们没有解决我的问题。
答案 0 :(得分:10)
我必须将d3d9.lib文件添加到链接器的其他依赖项中,就像GSerg所说的那样。