Jump to content

  • Log In with Google      Sign In   
  • Create Account


Beginning Directx


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
6 replies to this topic

#1 krrice   Members   -  Reputation: 120

Like
0Likes
Like

Posted 17 January 2013 - 04:38 PM

Hi everyone, I want to start learning DirectX. So I purchased Introduction to 3D Game Programming with DirectX 11 by Frank Luna. Well I guess my laptops video card (Radeon HD 4250) doesn't fully support the code in the book. So i was wondering if I started learning DirectX 9 will what I learn transfer to 11 or will I be wasting my time? I plan on getting a new Laptop/PC soon but it will probably be a while.



Sponsor:

#2 riverreal   Members   -  Reputation: 616

Like
1Likes
Like

Posted 17 January 2013 - 04:58 PM

I'm not sure but you can change the feature level to 9_1

 

"With Direct3D 11, a new paradigm is introduced called feature levels. A feature level is a well defined set of GPU functionality. For instance, the 9_1 feature level implements the functionality that was implemented in Microsoft Direct3D 9, which exposes the capabilities of shader models ps_2_x and vs_2_x, while the 11_0 feature level implements the functionality that was implemented in Direct3D 11."

 

http://msdn.microsoft.com/en-us/library/windows/desktop/ff476876(v=vs.85).aspx



#3 BarrySkellern   Members   -  Reputation: 615

Like
0Likes
Like

Posted 18 January 2013 - 02:22 AM

Just to add to riverreal's comment, the section of Luna's book you're after is 4.2.1 "Create The Device And Context" which discusses passing in and retrieving D3D_FEATURE_LEVEL flags to control what feature level you want to support, and what feature level is actually available. Bear in mind that if you use a lower feature level then some (probably many) of the features later in the book will not be supported.

 

Incidentally, do you know what feature level your GPU should support? My laptop GPU only supports DX11 if I force it to use accelerated graphics via the nVidia control panel. Maybe you just need to do something similar with the ATI one?


Edited by BarrySkellern, 18 January 2013 - 02:23 AM.

Visit http://www.mugsgames.com - Just released: Stroids, a retro style mini-game for Windows PC.

Mugs Games on Twitter: @MugsGames and Facebook: www.facebook.com/mugsgames

Me on Twitter @BarrySkellern

 


#4 Celiasson   Members   -  Reputation: 474

Like
0Likes
Like

Posted 18 January 2013 - 06:45 AM

Well, I also had a computer that did not support the DirectX11, and the only thing I had to change was this line: D3D11CreateDeviceAndSwapChain(NULL, D3D_DRIVER_TYPE_HARDWARE, NULL, 0, &featureLevel, 1, D3D11_SDK_VERSION, &swapChainDesc, &m_swapChain, &m_device, NULL, &m_deviceContext);

 

To this instead: D3D11CreateDeviceAndSwapChain(NULL, D3D_DRIVER_TYPE_REFERENCE, NULL, 0, &featureLevel, 1, D3D11_SDK_VERSION, &swapChainDesc, &m_swapChain, &m_device, NULL, &m_deviceContext);

This will allow you to do everything in DirectX11, but will use the CPU to draw instead of the Graphics Hardware. Obviously this will lower your FPS by like a 1000 times, so you will have like 0.1 fps or something. But it will work ^^



#5 NightCreature83   Crossbones+   -  Reputation: 2651

Like
0Likes
Like

Posted 18 January 2013 - 07:11 AM

You shouldn't try to learn DX9 at the moment any more, from a developers point of view it is an atiquated API and most companies have moved on to DX11 for PC and only use it for the X360 part of their engine (and even there it isn't a pure DX9.0c implementation). Most companies now have dropped XP support and with it DX9 as their renderpath and have chosen to use DX 11 and it's feature levels.


Worked on titles: CMR:DiRT2, DiRT 3, DiRT: Showdown, GRID 2, Mad Max

#6 Celiasson   Members   -  Reputation: 474

Like
0Likes
Like

Posted 18 January 2013 - 09:09 AM

I haven't learned any DX9 since DX10 was available when I started studying the subject. I don't know how much the DX9 differs from DX10, but the difference between DX10 and DX11 isn't big at all. I had no problems what so ever to switch to DX11, so in that regard I don't think there would be too hard for you to switch from DX9 to DX11 when you can.

But, then again, I don't know how much DX9 differs from DX10. Hopefully this was of any use to you :D



#7 NightCreature83   Crossbones+   -  Reputation: 2651

Like
0Likes
Like

Posted 18 January 2013 - 01:59 PM

<blockquote class="ipsBlockquote" data-author="PwFClockWise" data-cid="5022908"><p>I haven't learned any DX9 since DX10 was available when I started studying the subject. I don't know how much the DX9 differs from DX10, but the difference between DX10 and DX11 isn't big at all. I had no problems what so ever to switch to DX11, so in that regard I don't think there would be too hard for you to switch from DX9 to DX11 when you can.<br /><br />But, then again, I don't know how much DX9 differs from DX10. Hopefully this was of any use to you <img data-cke-saved-src="http://public.gamedev.net//public/style_emoticons/default/biggrin.png" src="http://public.gamedev.net//public/style_emoticons/default/biggrin.png" class="bbc_emoticon" title=":D" /></p></blockquote>The change from 9 to 10 is massive, DX10 changed the whole API and for good reason, the current design is better then what DX9 gave you. DX9 still has to support Fixed Function pipeline which DX10 doesn't have to.
Worked on titles: CMR:DiRT2, DiRT 3, DiRT: Showdown, GRID 2, Mad Max




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