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 / DirectX SDK March 2008 (or later)

Author
Message
sydbod
16
Years of Service
User Offline
Joined: 14th Jun 2008
Location: Just look at the picture
Posted: 28th Apr 2009 10:25 Edited at: 28th Apr 2009 15:13
Can we now use the above DirectX SDK and later??????

From the DarkGDK link
http://gdk.thegamecreators.com/
near the bottom where it talks about "Free Screen Saver Source Code powered by PhysX", and talks about the requirements, it says:
To recompile the source code you will need the following tools:

* 1) Visual Studio C++ 2008 (or the Express Edition)
* 2) DirectX SDK March 2008 (or later)
* 3) NVIDIA PhyX SDK 2.7.3 (available from NVIDIA)
* 4) DarkGDK with the November 2008 update installed
* 5) A purchased copy of DarkPHYSICS (download the Dark GDK Update - 26th November 2008)
* 6) A copy of MOLEBOX Pro (available from www.molebox.com)

Please note: "* 2) DirectX SDK March 2008 (or later)"

I am now confused ??????? do we still require to use the "August 2007 DirectX 9.0c SDK" or can we use the later SDKs with the new releases of DarkGDK ?

EDIT: UGGGGGG!!!!! It looks like Morcilla already spotted this .
Todd Riggins
20
Years of Service
User Offline
Joined: 29th Oct 2004
Location: Texas, USA
Posted: 29th Apr 2009 03:15 Edited at: 29th Apr 2009 03:17
Just a reminder,

the only reason you need that old august 2007 directx 9.0c sdk is because of the old outdated DirectPlay networking functionality it still uses.

As an option, if you are like me and want to keep up with technology and use the latest and greatest of the DirectX 9 sdk along with Dark GDK, just make a dummy multiplayer lib IF you don't need the DirectPlay functionality.

I have a thread on how to create the dummy lib ( and even a download of the lib that I made ) over here :

http://forum.thegamecreators.com/?m=forum_view&t=139830&b=22



PC Specs: Core2Quad 2.66 GHz, 8 GB RAM, Geforce 9800 GX2, Vista Ultimate 64-bit
ABXG
15
Years of Service
User Offline
Joined: 1st Apr 2009
Location: Canada
Posted: 29th Apr 2009 09:43
Thanks for that library, I am downloading the latest DirectX SDK right now.

------------------------------------
Currently 1300+ lines of code into an "over-the-shoulder" action RPG with combat based on rag-doll physics.
bjadams
AGK Backer
16
Years of Service
User Offline
Joined: 29th Mar 2008
Location:
Posted: 29th Apr 2009 09:56
does the latest directx sdk work well with darkgdk 6.3?
bjadams
AGK Backer
16
Years of Service
User Offline
Joined: 29th Mar 2008
Location:
Posted: 29th Apr 2009 10:11
i meant 7.3
ABXG
15
Years of Service
User Offline
Joined: 1st Apr 2009
Location: Canada
Posted: 29th Apr 2009 10:51
So I just finished uninstalling the April 2007 SDK and installing the March 2009 and I have some performance numbers to report in my game that so far consists of 3 objects and 130,000 polygons (large environment used for testing). On my Vista 64bit laptop with 3GB of RAM/2GHz Intel Core 2 Duo/Gefore 8400M GS I went from a max of 140 FPS to a max of 160 FPS looking at the ground. When freely looking around the FPS was about the same, about 110-120 FPS.

------------------------------------
Currently 1300+ lines of code into an "over-the-shoulder" action RPG with combat based on rag-doll physics.
bjadams
AGK Backer
16
Years of Service
User Offline
Joined: 29th Mar 2008
Location:
Posted: 29th Apr 2009 10:56
I tested some of my code here with March 2009 SDK.

All seems to work fine apart from the annoying msvc warning.

multiplayer.lib(Multiplayer.obj) : warning LNK4075: ignoring '/EDITANDCONTINUE' due to '/OPT:ICF' specification

Can I get rid of this?


Also the old sdk was dependent on d3dx9_37.dll

What DLL is the March 2009 SDK dependent on now?
sydbod
16
Years of Service
User Offline
Joined: 14th Jun 2008
Location: Just look at the picture
Posted: 29th Apr 2009 14:05 Edited at: 29th Apr 2009 14:12
@ Todd Riggins

Thanks for re-posting your link about the dummy lib. I did not forget about it, but I was just wondering if the situation had changed with regard to the new DarkGDK releases.

@ bjadams

The warning message multiplayer.lib(Multiplayer.obj) : warning LNK4075: ignoring '/EDITANDCONTINUE' due to '/OPT:ICF' specification, is that with a dummy lib file as described by Todd Riggins, or is that just from default settings, and as such, now with the new SDK people can compile without the network library?

I think D3DX9_40.dll (is the latest version )
ABXG
15
Years of Service
User Offline
Joined: 1st Apr 2009
Location: Canada
Posted: 29th Apr 2009 22:44
I have compiled a version of the library that will not (or at least didn't for me) give the
message. It is attached to this post.

------------------------------------
Currently 1300+ lines of code into an "over-the-shoulder" action RPG with combat based on rag-doll physics.

Attachments

Login to view attachments
bjadams
AGK Backer
16
Years of Service
User Offline
Joined: 29th Mar 2008
Location:
Posted: 29th Apr 2009 22:59
with the new multiplayer.lib I get the following Linker error:

1>Linking...
1>fatal error C1900: Il mismatch between 'P1' version '20080116' and 'P2' version '20070207'
1>LINK : fatal error LNK1257: code generation failed
bjadams
AGK Backer
16
Years of Service
User Offline
Joined: 29th Mar 2008
Location:
Posted: 29th Apr 2009 23:02
Quote: "The warning message multiplayer.lib(Multiplayer.obj) : warning LNK4075: ignoring '/EDITANDCONTINUE' due to '/OPT:ICF' specification, is that with a dummy lib file as described by Todd Riggins, or is that just from default settings, and as such, now with the new SDK people can compile without the network library?"


error happens only with dummy lib


Quote: "I think D3DX9_40.dll (is the latest version ) "


I confirmed that march 2009 sdk is now dependant on D3DX9_41.dll
Todd Riggins
20
Years of Service
User Offline
Joined: 29th Oct 2004
Location: Texas, USA
Posted: 30th Apr 2009 01:06 Edited at: 30th Apr 2009 01:31
Oh me gosh, I totally missed out on the new March 09 version what splendid new stuff in it that TGC could make use of... Direct2D and DirectWrite. Cooolll...

I looked at what MS had to say about that c1900 error thing:
http://msdn.microsoft.com/en-us/library/ks07be9f.aspx
-------------------------------------------------------------------
Fatal Error C1900Error Message
Il mismatch between 'tool1' version 'number1' and 'tool2' version 'number2'

Tools run in various passes of the compiler do not match. number1 and number2 refer to the dates on the files. For example, in pass 1, the compiler front end runs (c1.dll) and in pass 2, the compiler back end runs (c2.dll). The dates on the files must match and if they do not, reinstall and use the current version of each tool.

The above discussion seems somewhat generic, so here's a real-life scenario as an example of how this error might be encountered:
•You build a static library with the "Whole Program Optimization" (/GL) switch.
•Because creating a static library does not include the link phase, the Link-Time Code Generation (LTCG) has not been done.
•You subsequently install a service pack to the compiler, or attempt to link with the library on another machine where a SP has been applied.
•Because the .lib file was built with an older version of the compiler tools, the C1900 error is thrown when trying to build with a newer patched version of the compiler.
Compiling static libraries with the /GL switch is generally not advised. See the article discussing the use of this switch:
/GL (Whole Program Optimization) (C++):
http://msdn.microsoft.com/en-us/library/0zza0de8.aspx


--------------------------------------

so with a quick guess, looks like it could be some microsoft service pack update that's making a difference between our machines to get that error.

I guess it's best if you compiled your own version of that dummy multiplayer library. At least then, your program created with it should at least work on other machines.

EDIT: Yeah that stuff above totally makes sense now. It's just the matter of recompiling the code for the dummy lib. The other thread explains exactly how to compile your own... so it can be a good exercise if you never compiled a static lib before... or grab ABXG's new recompile of the lib above( just spotted that, thanks )

PC Specs: Core2Quad 2.66 GHz, 8 GB RAM, Geforce 9800 GX2, Vista Ultimate 64-bit
bjadams
AGK Backer
16
Years of Service
User Offline
Joined: 29th Mar 2008
Location:
Posted: 30th Apr 2009 12:42
I am using latest Visual Studio with latest patches.

I will try to compile the lib myself and let you know. thanks a lot!
bjadams
AGK Backer
16
Years of Service
User Offline
Joined: 29th Mar 2008
Location:
Posted: 30th Apr 2009 14:31
it worked! thanks a lot!

had to compile the .lib with /GL though.
bjadams
AGK Backer
16
Years of Service
User Offline
Joined: 29th Mar 2008
Location:
Posted: 30th Apr 2009 14:31
just a quick question.

if i don't use any multiplayer commands in my code, will the multiplayer.lib be still linked to my final exe?
Todd Riggins
20
Years of Service
User Offline
Joined: 29th Oct 2004
Location: Texas, USA
Posted: 30th Apr 2009 17:08
Quote: "if i don't use any multiplayer commands in my code, will the multiplayer.lib be still linked to my final exe? "


Yes it will be linked. Unfortunitely, there's not a way to simply remove the multiplayer lib all together.

PC Specs: Core2Quad 2.66 GHz, 8 GB RAM, Geforce 9800 GX2, Vista Ultimate 64-bit
stevebrit
15
Years of Service
User Offline
Joined: 6th Jan 2009
Location: Florida USA
Posted: 7th May 2009 03:25
This may be a silly question but what if you comment these out in
DarkSDK.h

#include <DarkSDKFTP.h>

and

#pragma comment ( lib, "ftp.lib" )

Am i right in assuming that doing this means that the FTP
library will effectivly NOT be loaded into memory.
Is anyone aware of any side effects that would result from this assuming that you are not wanting to use that library...

I have done this and my games etc seem to run with no problems ..

Regards :- Steve

AMD Athlon64x2 3.1Ghz - Ram 4Gb DDR2 800Mhz - 500Gb HD
Ndivia 9600GT SLI - 24in LCD - WIN 7 - 64 bit BETA
sydbod
16
Years of Service
User Offline
Joined: 14th Jun 2008
Location: Just look at the picture
Posted: 7th May 2009 08:38
It is the "multiplayer.lib" that is the problem and not the "ftp.lib".
stevebrit
15
Years of Service
User Offline
Joined: 6th Jan 2009
Location: Florida USA
Posted: 7th May 2009 20:19
Ok thanks i was really just wondering if altering the

#include <DarkSDKFTP.h>

in that way would result in the removal of libs without causing any other problems, assuming you are not wanting to use that particilar lib..

Just learning here about how it all works, thanks for your reply.
So much to learn and not enough time to learn it all .......

Regards :- Steve

AMD Athlon64x2 3.1Ghz - Ram 4Gb DDR2 800Mhz - 500Gb HD
Ndivia 9600GT SLI - 24in LCD - WIN 7 - 64 bit BETA
ABXG
15
Years of Service
User Offline
Joined: 1st Apr 2009
Location: Canada
Posted: 7th May 2009 21:48
I commented out:



I do not use functions from any of the libraries at the moment, my project compiled fine. I did seem to notice a slightly faster compile, but the size of my output executable file did not change (it started as 1272kB and ended as 1272kB).

You could of course get rid of the extra code, it probably won't do much for you at the end of the day.

------------------------------------
Currently 1300+ lines of code into an "over-the-shoulder" action RPG with combat based on rag-doll physics.
Lilith
16
Years of Service
User Offline
Joined: 12th Feb 2008
Location: Dallas, TX
Posted: 8th May 2009 20:37
I'm not sure how MS does it but I'm pretty sure that back when I was using Borland's compiler the only thing libs did was to hold code that you might need linked to your program. The content was a collection of code modules that may or may not have involved multiple functions and data.

When it came time to compile the compiler would look through the library and bring in only the modules it needed, though there may have been some unnecessary code in a module you used. Multiple passes may have been necessary in order to account for all references. If MS is doing the same thing then that could explain why your code size hasn't change. The compile may have been sped up by not having to search through the specified libraries.

Lilith, Night Butterfly
I'm not a programmer but I play one in the office
ABXG
15
Years of Service
User Offline
Joined: 1st Apr 2009
Location: Canada
Posted: 8th May 2009 23:34
I think you are right, when I added the -verbose compiler switch my output box was filled to references of project excluding portions of code.

------------------------------------
Currently 1300+ lines of code into an "over-the-shoulder" action RPG with combat based on rag-doll physics.

Login to post a reply

Server time is: 2024-11-25 12:21:10
Your offset time is: 2024-11-25 12:21:10