Jump to content

  • Log In with Google      Sign In   
  • Create Account


Can i program DirectX11 on a GeForce 8800GTX?


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
10 replies to this topic

#1 KurtO   Members   -  Reputation: 210

Like
0Likes
Like

Posted 20 September 2012 - 11:50 AM

Iam going through some DX11 tutorials and as soon as i am going to draw with Shaders the program crashes.
When i declarate these functions with D3DX10CreateEffectFromFile it works, but when using D3DX11CompileFromFile there is a crash on the dev->Draw Method.

Is this because my Card is not DirectX 11 compatible?

Sigh... Mr Murphy don´t want me to make games...
I was happy with my engine untill i saw soft shadowmapping shadows... i want them in my engine!!! =)


If this is the case, which DX11 card is best (not ATI, i want nVidia) for around 200$?

Sponsor:

#2 Asesh   Members   -  Reputation: 268

Like
0Likes
Like

Posted 20 September 2012 - 12:01 PM

GeForce 8x doesn't support shader model 5 but however you can D3D11 by specifying D3D_FEATURE_LEVEL_10_0 when calling D3D11CreateDeviceAndSwapChain and user shader model 4

#3 KurtO   Members   -  Reputation: 210

Like
0Likes
Like

Posted 20 September 2012 - 12:21 PM

Hm ok, but this means i have to change all my shaders to and stuff like this:

[source lang="cpp"]D3DX11CompileFromFile(L"shaders.hlsl", 0, 0, "VShader", "fx_4_0", 0, 0, 0, &VS, 0, 0); D3DX11CompileFromFile(L"shaders.hlsl", 0, 0, "PShader", "fx_4_0", 0, 0, 0, &PS, 0, 0); // encapsulate both shaders into shader objects dev->CreateVertexShader(VS->GetBufferPointer(), VS->GetBufferSize(), NULL, &pVS); dev->CreatePixelShader(PS->GetBufferPointer(), PS->GetBufferSize(), NULL, &pPS);[/source]

wont work i guess?

#4 KurtO   Members   -  Reputation: 210

Like
0Likes
Like

Posted 20 September 2012 - 01:57 PM

It was my shaders that were wrong as you said. using 4.0 then it works. =)

#5 damix911   Members   -  Reputation: 201

Like
0Likes
Like

Posted 20 September 2012 - 03:48 PM

Hello KurtO, just so you know (because it is actually a little counter-intuitive) your 8-series card may support compute shaders, even though with some limitations. So you may want to give them a try, they could be useful to achieve some smoothing effects. You can refer to this thread for more info on this topic.

http://www.gamedev.net/topic/582066-the-question-about-directcompute-and-opencl/

Basically as Asesh said the DirectX 11 API can be used to program DirectX 10 and even DirectX 9 hardware, but all the features you use must be available on that hardware, so DirectX 11 adds nohing in terms of functionality to these cards except compute shaders, which actually work (I used to program them on my G210, DirectX 10 card).

#6 KurtO   Members   -  Reputation: 210

Like
0Likes
Like

Posted 21 September 2012 - 12:17 AM

Thank you damix911, i was wrong, i didnt think you could use the DirectX11 API at all, but this is not the case. Luckily i didnt buy a new card and i will continue develop DirectX11 on my 8800GTX card.
The limitation is not in my hardware at this moment, it is in my brain trying to understand all the math and physics! =) hehe

I have trouble today with Soft shadow mapping and i have seen some examples in DX11 so that is why i am jumping the ship from DX9.
I also like the whole new API with shaders for rendering and i think it is convinient to have the shaders do lot of the "SetRendering" Flags that you had to do in DX9.

So onve again, thanks for your help and if anyone find a nice "simple" soft shadow mapping sample, please let me know! =)

#7 Nik02   Crossbones+   -  Reputation: 2631

Like
0Likes
Like

Posted 21 September 2012 - 12:55 AM

Tessellation and "full" compute shaders are cool, though Posted Image

Take a look at the DX SDK June 2010 samples (not sure if Windows SDK still has them as they were). There are several shadow samples; though the most advanced ones require SM5 to run efficiently, and require more GPU work if implemented in earlier models.

Edited by Nik02, 21 September 2012 - 01:20 AM.

Niko Suni


#8 KurtO   Members   -  Reputation: 210

Like
0Likes
Like

Posted 21 September 2012 - 03:25 AM

Nik02, ihave tried with lmost all of the SDK samples, but i hate when they work with DXUtil.
I want full understanding and it takes so much time to understand all the Util-Functions that are used. And also there is always proppet with all kinds of features, lots of option and different techniques.

I would like basic sample that is easy to follow with just a plane and some simple meshes / primitives.

I think the basic problem is that i have to poor understanding of shaders and DX11 but i am doing lots of DX11 tutorials, and shaders are COOOOOOL and i cant imagine to program now without them.

But like you i also think tessellation and "full" shaders are cool! =) But i am not there yet in my knowledge. heheh

#9 Nik02   Crossbones+   -  Reputation: 2631

Like
0Likes
Like

Posted 21 September 2012 - 04:00 AM

The utility stuff in samples is usually used so as to reduce the amount of so-called "boilerplate" code - functionality that a general DX sample app needs to do anyway. The actual techniques demonstrated in the SDK samples are largely independent from the utility classes. Most of the "meat" is in the shader and effect files.

Soft shadowing is a relatively advanced concept, but if you have a good understanding on how to do shadow maps and blurring as independent techniques, it is not extremely difficult to combine them. Both general shadow mapping and blurring have lots of examples floating around the 'net.

Be sure to check the NVidia, AMD and Intel developer sites for more GPU samples as well.

Niko Suni


#10 KurtO   Members   -  Reputation: 210

Like
0Likes
Like

Posted 21 September 2012 - 05:57 AM

I think i understand the concept, but there are so many steps, and everything has to be 100% precise for this to work (syntax, shaders and pixelshader and states), But i will definetly try one of those demos and then try to implement shadows to my engine.

#11 Nik02   Crossbones+   -  Reputation: 2631

Like
0Likes
Like

Posted 21 September 2012 - 06:15 AM

Yea, you need some highly abstract thinking to truly understand shadow mapping; in particular, the relation to the "camera" and "light" spaces. Once you do understand it, the code itself is not too difficult. Same applies to blurring. Soft shadows are generally implemented as shadow maps with variable blur width based on distance or occlusion criteria (though this is not the only way).

You can use PIX to inspect the intermediate render targets (such as the shadow depth map), if you find that your technique doesn't work in an expected way. Once you see the device state visually, it is much easier to determine what's wrong (if anything).

Edited by Nik02, 21 September 2012 - 06:21 AM.

Niko Suni





Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS