Jump to content
  • Advertisement
pranciskus2

DX12 I just want to ask if I'm able to develop DX12 games using DX11 supported video card?

Recommended Posts

I was searching for it in google but didn't find, I found only about running the program I can if updated drivers. I'm new in DX11, so I want to ask whether DX12 coding is differs from DX11 or only it has better rendering?

Share this post


Link to post
Share on other sites
Advertisement

Technically, your PC does not need to be capable of running D3D12 applications in order to program D3D12 applications.

In order to run D3D12 applications,  your OS must be Windows 10. If this is the case, you can use a (very slow) software driver instead of a hardware driver. To use a hardware driver, you must have a GPU which supports D3D12.

D3D12 is not D3D11 with better graphics. The quality and performance of the graphics depends mostly on the internals of the application itself. Though, you can obtain more performant applications with D3D12 (assuming one knows how to use the API properly).

D3D12 is a lower level API than D3D11, so if you consider yourself new to D3D11, don't jump straight into D3D12 (unless you have to due to external parties).

 

Edited by matt77hias

Share this post


Link to post
Share on other sites
6 hours ago, matt77hias said:

Technically, your PC does not need to be capable of running D3D12 applications in order to program D3D12 applications.

In order to run D3D12 applications,  your OS must be Windows 10. If this is the case, you can use a (very slow) software driver instead of a hardware driver. To use a hardware driver, you must have a GPU which supports D3D12.

D3D12 is not D3D11 with better graphics. The quality and performance of the graphics depends mostly on the internals application itself. Though, you can obtain more performant applications with D3D12 (assuming one knows how to use the API properly).

D3D12 is a lower level API than D3D11, so if you consider yourself new to D3D11, don't jump straight into D3D12 (unless you have to due to external parties).

 

Thanx, answer is very comprehensive, I'm wondering if there are the same functions in dx11 as in dx12 or differs by something.

Share this post


Link to post
Share on other sites
9 hours ago, pranciskus2 said:

Thanx, answer is very comprehensive, I'm wondering if there are the same functions in dx11 as in dx12 or differs by something.

You have an ID3D11Device and an ID3D12Device but as one can see at MSDN https://msdn.microsoft.com/en-us/library/windows/desktop/dn788650(v=vs.85).aspx the interfaces are different. D3D12 contains many more functions than D3D11 and it doesn't just add them to the existing ones: they are different.

Worth reading: https://stackoverflow.com/a/33991281/1731200 

Share this post


Link to post
Share on other sites
4 hours ago, matt77hias said:

You have an ID3D11Device and an ID3D12Device but as one can see at MSDN https://msdn.microsoft.com/en-us/library/windows/desktop/dn788650(v=vs.85).aspx the interfaces are different. D3D12 contains many more functions than D3D11 and it doesn't just add them to the existing ones: they are different.

Worth reading: https://stackoverflow.com/a/33991281/1731200

So what does command DX_Feature_level 10 or 11 (I can't remember how to type exactly)?  If I have written game and changed feature level from 11 to 12 whether my further commands won't work and I couldn't compile it? And I would like to ask how games in options can be changed from dx 11 to 12. Whether developers have to code in dx 11 and dx 12 separately? 

Share this post


Link to post
Share on other sites

Yes, if a game allows you to change from DX11 to DX12 they will have two completely different rendering paths, targeting the different APIs.

Edited by GuyWithBeard

Share this post


Link to post
Share on other sites

Feature level 11 and 12, and D3D11 and 12 are very different. Feature level indicates hardware functionality. If you're using D3D11 at feature level 12, that just means you have access to some additional functionality over a feature level 11 device. If you're using D3D12, it's a COMPLETELY different thing compared to D3D11.

Share this post


Link to post
Share on other sites
5 hours ago, pranciskus2 said:

If I have written game and changed feature level from 11 to 12 whether my further commands won't work and I couldn't compile it? And I would like to ask how games in options can be changed from dx 11 to 12. Whether developers have to code in dx 11 and dx 12 separately?

Short answer: these are completely different APIs and you are not going to be able to reuse chunks of code. If you want to support both, than you basically need a separate D3D11 and D3D12 renderer. Furthermore, given a D3D11 renderer you will have a very hard time supporting a D3D12 renderer. So if you want to support both, then you start with the lowest-level API (D3D12) and try to add the higher level API (D3D11) not the other way around. 

Share this post


Link to post
Share on other sites

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

  • Advertisement
×

Important Information

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

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!