Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Dark GDK / DarkGDK now compiled for Visual Studio 2017. You can download libs here.

Author
Message
s_i
8
Years of Service
User Offline
Joined: 23rd May 2009
Location: Russia
Posted: 21st Oct 2017 22:15 Edited at: 21st Oct 2017 22:19
Feel the power of the light side!
I compiled DarkGDK for Visual Studio 2017. Now you can download it from attachment and use it with VS2017. This is good old "Unofficial r114" version, but compiled for VS2017. Enjoy!
I tested and use it with two my own games (2D and 3D+shaders), no problems. (But I not tested DarkGDK's own multiplayer part and odePhysics part, because I do not use them in my games)

How to use with VS2017
(Step 0, optional) If you want, you can firstly install old DarkGDK for VS2008, read here how to do this: Step-by-step guide
Step 1. Install free Visual Studio 2017 Community.
Step 2. Open "Visual Studio installer", press button "Change" and download from it all C++ libraries, and Windows 10 SDK (picture_1 in attachment)
Step 3. Install DirectX_SDK_august_2007.
Step 4. Download from attachment file "include_and_libs.zip". Unzip it into folder "C:\Program Files (x86)\The Game Creators\Dark GDK".
Step 5. Open your old DarkGDK's game in VS2017. VS2017 converts solution into new form.
Step 6. In game's solution: open "project's properties", set "all configurations" (debug+release). You MUST add "legacy_stdio_definitions.lib" to properties => linker => enter (or maybe "input". Excuse me, I have only russian version of VS2017.) (picture_2 in attachment)
In my games I also add "libcmtd;msvcrt;msvcprt;atls;libcp;darksdk.lib;" into properties => linker => ignored libraries.
Step 7. in "properties => folders VC++ => included folders" you can set paths as in my example on the picture (picture_3 in attachment)
Step 8. in "properties => folders VC++ => libraries folders" you can set paths as in my example on the picture. (picture_4 in attachment) Yes, for many years I set path only to release-version of DarkGDK's libs for both release and debug mods in my Visual Studio.
Step 9. In Linker => additional => "image has safe exception handlers" set "/SAFESEH:NO".
Step 10. In your main.cpp write "#define INITGUID" then "#include <dxdiag.h>" – before "#include "DarkGDK.h"" or "#include "DarkGDKWindow.h"". Without this you will have error "Linker Error LNK2019 link to unresolved external symbol _DXFILEOBJ_XSkinMeshHeader in "bool __cdecl XFILE_GetMeshData(struct IDirectXFileData *,struct sFrame *)" in convx.lib(ConvX.obj)". Second way: if you use "Cloggy's D3D for DarkGDK" in your project, you will not see this error too.

Summary
When I compile now my games in VS2017, I have 0 Errors and 0 warnings in both debug and release mods.
Download my two test game projects (VS2017_test_games.zip in attachment), look into project's properties, and set your game's properties as in this my examples.
Good luck!

You can compile DarkGDK yourself
Download from attachment source code, find "...\DarkGDK\Code\Compiler - Visual Studio 9\Dark SDK.sln", open it in VS2017, compile in Debug, then Release.
Microscopic changes from original r114 for VS2008:
1) commented little piece of unwanted code in CParticleManagerC.cpp (code for DXUtil_Timer). Without this I have error "LNK2005 "float __stdcall DXUtil_Timer(enum TIMER_COMMAND)" (?DXUtil_Timer@@YGMW4TIMER_COMMAND@@@Z) already defined in sound.lib(dxutil.obj)"
2) commented first line in DarkSDKOdePhysics.h, dropped ode.lib into folders "Lib_VS2017\VS" and "Lib_VS2017\VS9Debug". Without this ugly lifehack I have error.

Attachments

Login to view attachments
Morcilla
14
Years of Service
User Offline
Joined: 1st Dec 2002
Location: Spain
Posted: 25th Oct 2017 17:50
Hi @s_i

This is greatly appreciated.

Glad to see there is still compatibility with Cloggy's D3D for DarkGDK. I use it extensively on my VS2008 project.

I also use some other community libraries, like IanM's mesh operations.

Unfortunately I'm in a struggle to test this in a short term, I'm out of spare time at the moment.

I would like to give it a try to find any issues and definitively migrate from the legacy VS2008.

Many thanks for your effort. I'm nominating you for a well deserved forum badge of GDK Master




s_i
8
Years of Service
User Offline
Joined: 23rd May 2009
Location: Russia
Posted: 25th Oct 2017 19:27 Edited at: 25th Oct 2017 19:32
Yes, "Cloggy's D3D for DarkGDK" and "SPARK particles DarkGDK wrapper" work in my VS2017-games without any problems.
Also I use a fairly old non-DarkGDK libraries in my VS2017-games: Box2D, Squall Sound, stlAStar. All OK
Morcilla
14
Years of Service
User Offline
Joined: 1st Dec 2002
Location: Spain
Posted: 26th Oct 2017 09:45
That's great and exciting ::thumbs up::

Looking forward to give it a try and if all goes well, migrate the whole main project.

I'll let you know how it goes

Many thanks for all your support and keeping DGDK alive and up to date!!

Also congrats on your new GDK Master badge, looking great
s_i
8
Years of Service
User Offline
Joined: 23rd May 2009
Location: Russia
Posted: 26th Oct 2017 19:08
WOW, cool badge!!!
Very nice! Thank you, TheGameCreators! Thank you, Morcilla!
Morcilla
14
Years of Service
User Offline
Joined: 1st Dec 2002
Location: Spain
Posted: 27th Oct 2017 11:16
Hey no need to thank, you deserve it
Well done pal, thanks to you, and keep on the good work
Bored of the Rings
12
Years of Service
User Offline
Joined: 25th Feb 2005
Location: Middle Earth
Posted: 8th Nov 2017 06:54
many thanks for this...works very well. Using VS2017 at the moment to develop further a tool to import terrain heightmaps into GameGuru using the BlitzTerrain plugin which I also compiled using VS2017. Good work
Professional Programmer, languages: SAS, C++, SQL, PL-SQL, DBPro, Purebasic, JavaScript, others

Login to post a reply

Server time is: 2017-11-25 07:32:39
Your offset time is: 2017-11-25 07:32:39