Jump to content
  • Advertisement
Sign in to follow this  
Toni Petrina

Compiling DXUT wo DX10

This topic is 3978 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've compiled DXUT Core and Optional projects but in linking phase, VC complains about various DX10 functions which cannot be found unless I link my project with d3dx10d.lib. If I do that, I can't run my app without d3dx10d_34.dll Problem is in various DX10 only functions such as CDXUTDialogResourceManager::OnD3D10ResizedSwapChain, etc. So, how do I properly compile and link my code without D3D10?

Share this post


Link to post
Share on other sites
Advertisement
DXUT is designed to automatically use D3D10 if it's available. If it's not, then it will fall back to D3D9. You should compile and link with both D3D9 and D3D10 libraries.

You can force DXUT to use D3D9 by specifiying -forceapi:9 on the command-line when executing your program.

It should only be trying to use D3D10 if you have the D3D10 runtime installed (and are on a Vista machine). Then, it will still only use D3D10 if you have a D3D10 capabable video card. Otherwise, it will fall back to D3D9. Since it appears to be attempting to load the D3DX10 dll, I can only assume that it has at least found the D3D10 runtime (possibly partially) installed on your system.

Share this post


Link to post
Share on other sites
Another option is use a earler version of DX SDK which DXUT is DX9 only (for example, my favorite April 2006 ^_^)

Share this post


Link to post
Share on other sites
Thanks for your suggestions. I really don't know why is DXUT trying to load DX10 drivers, it makes no sense (since I have XP and not-DX10 card).

Share this post


Link to post
Share on other sites
Sorry to hear your having troubles. The DXSDK samples work around this issue by delay loading the D3DX10 dlls.

Once you link to the d3dx10 lib and delay load the D3DX10 dll, DXUT based apps will run fine on Windows XP because no D3D10 APIs will be called.

More info about delay loading can be found here:
http://msdn2.microsoft.com/en-us/library/151kt790(VS.80).aspx

Jason
DXSDK dev lead

Share this post


Link to post
Share on other sites
Depends.exe cannot find those functions so my only option (since DXUTOptional is static library) is to comment out implementation of those funcions.

I always thought that I will simply not use functions (such as D3D10 versions) which are not loaded when compiling against a static library. Odd.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!