Advertisement

Directx Issues

Started by January 06, 2015 02:08 AM
2 comments, last by Brain 10 years ago

Hello everyone!

I am having some problems with a game I coded up a while back. It was my first Directx game and the class I made it for was teaching us about Directx 9. The computer i had it on died and I transferred it to my new PC but now it won't work. I should mention that this computer has Windows 7, Microsoft SDK (Jun 2010), and VS 2010 Pro. I get these errors.

1>Southwall_main.obj : error LNK2001: unresolved external symbol "struct IDirect3DDevice9 * d3ddev" (?d3ddev@@3PAUIDirect3DDevice9@@A)
1>Southwall_main.obj : error LNK2019: unresolved external symbol "struct IDirect3DSurface9 * __cdecl LoadSurface(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?LoadSurface@@YAPAUIDirect3DSurface9@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) referenced in function "void __cdecl BuildGameWorld(void)" (?BuildGameWorld@@YAXXZ)
1>Southwall_main.obj : error LNK2001: unresolved external symbol "struct IDirect3DSurface9 * backbuffer" (?backbuffer@@3PAUIDirect3DSurface9@@A)
1>Southwall_main.obj : error LNK2019: unresolved external symbol "struct IDirect3DTexture9 * __cdecl LoadTexture(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,unsigned long)" (?LoadTexture@@YAPAUIDirect3DTexture9@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@K@Z) referenced in function "bool __cdecl Game_Init(struct HWND__ *)" (?Game_Init@@YA_NPAUHWND__@@@Z)
1>Southwall_main.obj : error LNK2019: unresolved external symbol "bool __cdecl DirectInput_Init(struct HWND__ *)" (?DirectInput_Init@@YA_NPAUHWND__@@@Z) referenced in function "bool __cdecl Game_Init(struct HWND__ *)" (?Game_Init@@YA_NPAUHWND__@@@Z)
1>Southwall_main.obj : error LNK2019: unresolved external symbol "bool __cdecl Direct3D_Init(struct HWND__ *,int,int,bool)" (?Direct3D_Init@@YA_NPAUHWND__@@HH_N@Z) referenced in function "bool __cdecl Game_Init(struct HWND__ *)" (?Game_Init@@YA_NPAUHWND__@@@Z)
1>Southwall_main.obj : error LNK2001: unresolved external symbol "bool gameover" (?gameover@@3_NA)
1>Southwall_main.obj : error LNK2019: unresolved external symbol "void __cdecl Sprite_Draw_Frame(struct IDirect3DTexture9 *,int,int,int,int,int,int)" (?Sprite_Draw_Frame@@YAXPAUIDirect3DTexture9@@HHHHHH@Z) referenced in function "void __cdecl Game_Run(struct HWND__ *)" (?Game_Run@@YAXPAUHWND__@@@Z)
1>Southwall_main.obj : error LNK2019: unresolved external symbol "void __cdecl Sprite_Animate(int &,int,int,int,int &,int)" (?Sprite_Animate@@YAXAAHHHH0H@Z) referenced in function "void __cdecl Game_Run(struct HWND__ *)" (?Game_Run@@YAXPAUHWND__@@@Z)
1>Southwall_main.obj : error LNK2001: unresolved external symbol "struct ID3DXSprite * spriteobj" (?spriteobj@@3PAUID3DXSprite@@A)
1>Southwall_main.obj : error LNK2019: unresolved external symbol "bool __cdecl Key_Down(int)" (?Key_Down@@YA_NH@Z) referenced in function "void __cdecl Game_Run(struct HWND__ *)" (?Game_Run@@YAXPAUHWND__@@@Z)
1>Southwall_main.obj : error LNK2019: unresolved external symbol "void __cdecl DirectInput_Update(void)" (?DirectInput_Update@@YAXXZ) referenced in function "void __cdecl Game_Run(struct HWND__ *)" (?Game_Run@@YAXPAUHWND__@@@Z)
1>Southwall_main.obj : error LNK2019: unresolved external symbol "void __cdecl Direct3D_Shutdown(void)" (?Direct3D_Shutdown@@YAXXZ) referenced in function "void __cdecl Game_End(struct HWND__ *)" (?Game_End@@YAXPAUHWND__@@@Z)
1>Southwall_main.obj : error LNK2019: unresolved external symbol "void __cdecl DirectInput_Shutdown(void)" (?DirectInput_Shutdown@@YAXXZ) referenced in function "void __cdecl Game_End(struct HWND__ *)" (?Game_End@@YAXPAUHWND__@@@Z)
1>C:\Users\BISHDP\Documents\Visual Studio 2010\Projects\SGPG210\Southwall\Debug\Southwall.exe : fatal error LNK1120: 14 unresolved externals
Now, I recognize that these are linker errors and have searched the internet and these forums for them but nothing I found has solved the issue. Please forgive me if I missed the solution and am re-posting the same question as another member here. I have my project set to use Multi-byte characters, I have the correct SDK file location in the include property, and I have d3d9.lib and d3dx9.lib in the linker inputs. Any ideas? Thank you all for your time and assistance.

So, after poking at my program a bit more, I discovered that when I had to transfer the project from one PC to another, the files making up the project somehow got removed from the project files. They were all in the directory but no longer associated with the project. I added them back in manually and it works fine. This has been driving me nuts for weeks and it is annoying that it was such a simple fix but I am glad it is working again. Ain't it always the little things?

Advertisement
There's no Game Design question here. Moving this to FB.

-- Tom Sloper -- sloperama.com

Were you using version control of some kind (e.g. git, subversion) to store your project?

usually problems such as this are eliminated or at least made simpler to solve if you have your project regularly pushed to version control. It has a lot of other benefits too.

This topic is closed to new replies.

Advertisement