Sign in to follow this  

DX9 - dll problems

This topic is 2547 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I'm building simple games like tetris and the thing that bothers me is, that people with installed dx9 still needs stuff like

d3dx9_42.dll
d3dx9_38.dll
...
and other versions.

I know the solution to this is to add redistributable packge but that's insane since I would be adding 50MB+ to 2MB game.

I've heared about compiling project on earlier SDK like DX9 summer 2003 which doesn't need those dlls yet, but then again, I found around this forums saying it's not wise to do so.

My projects are 2D and nothing big - so DX9 summer 2003 SDK would be more than enough? I need your suggestions on what should I do, please.

Thanks for answers

Share this post


Link to post
Share on other sites
If you use the D3DX libraries, then you have to include them. There's no way around that. Even if you used the old SDK you would just be static linking the libraries, which would make your executable a lot bigger. The only way around this is to not use D3DX.

Share this post


Link to post
Share on other sites
Thanks for answer!

Well, for small games I prefer bigger executable because I realy can't force people to install distributables for playing one small game. Any idea how bigger that executable is then?

Share this post


Link to post
Share on other sites
Just FYI, if you use an old DX SDK, but not that old, it will dynamically compile to a d3dx_YZ.dll; however chances are, most of your customers will have that version of DirectX already installed.

The problem often happens because developers use the latest DX SDK, while the users use a three-/two-/one-year old DirectX redistributable, but not a 7-year old redist.

I personally would use a DX from around 2006, and include a link to the dxwebsetup for those who run in trouble.
The web installer weights 286kb and only downloads the necessary updates required for your client, which is gonna be equal or less than those 50MB you're afraid of.

That way you get the advantages of both worlds: small size and minimum trouble for your users (note: a few of them will still have it, how many depends on your market)

Like MJP said, the only real workaround is not to use D3DX.

Share this post


Link to post
Share on other sites
Hi Blodyavenger,

there is two things i know that you might find very usefull,

<1>
instead use the web intall version of the DirectX Library instead of the offline one.
</1>

<2>
this is what i did for BattleFields 2,
for you case just put a copy of d3dx9_42.dll and d3dx9_38.dll
with your game with instructions to put them in C:\Windows\System32if there os is installed to C:\Windows, if not tell them to put it in the System32
Folder of there os(Note ive only tried this on XP but should work on any window system that has the Windows32 Folder) also it'll be a good idea to include both the 64bit and 32bit versions of the dll's of the two different bit os.
</2>

Share this post


Link to post
Share on other sites
Quote:
Original post by Blodyavenger
I'm building simple games like tetris and the thing that bothers me is, that people with installed dx9 still needs stuff like

d3dx9_42.dll
d3dx9_38.dll

I do believe _42 superceded _38, and only the _42 will be required.

As long as they have the newest version of DirectX 9.0, as they should, no DLLs will be missing.

Share this post


Link to post
Share on other sites

This topic is 2547 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this