DirectX 11 on Windows 10

Viewed 2804

I am just trying to learn DirectX 11 (and no, I am neither interested in OpenGL nor Vulcan) and I am using the latest Windows 10 insider build. I know there is DirectX 12, but from what I have heard, it is more trouble for non-(A)AA than it is worth. I am perfectly aware, that for getting a game up and running, using an already existing game engine like Unreal Engine would be more appropriate. But I am not really interested in getting a working game. I just want something not depreciated and good to replace GDI(+). And I always wanted to learn DirectX anyways. I am using C++ which is by the way may main programming language. As my IDE, I am using Visual Studio 2017 Enterprise. I should also add that I am familiar with the Windows API (formerly called Win32 API).

I have access to Allen Sherrod's and Wendy Jones's book Beginning DirectX 11 Game Programming and Frank D. Luna's book Introduction to 3D Game Programming with DirectX 11. But there is a major problem with both: They use the depreciated DirectX 11 June SDK which is incompatible with both the Windows 8 and 10 SDKs. While it is easy to replace the error management code with WinAPI code, I am stuck with:

bool compileResult = CompileD3DShader( "SolidGreenColor.fx", "VS_Main", "vs_4_0", &vsBuffer );

CompileD3DShader seems to be non existent. I hadn't much luck with Googling it. But from what I have found, I have concluded, that they have not just renamed it, but replaced it by some other mechanism. Though I am not sure about it. Could anyone help my write that line in an Windows 8/10 compatible way?

And another question, are those books of any use, provided I am not interested in using the old DirectX SDK? I am thinking about looking for good online tutorials. If there aren't any that are good enough, I'd be forced to switch to Luna's DirectX 12 book and to DirectX 12 in general. Unfortunately, there does not seem to be a DirectX 12 successor to Beginning DirectX 11 Game Programming (There is a book for DirectX 9 and 10 respectively) which I like more (I prefer to learn the basics of the API first, so that I can focus on math afterwards).

Does anybody know a good, comprehensive source to learn "modern" DirectX 11? I am open to both books and online content (including YouTube videos).

UPDATE 1: Given that asking for advice on alternative leaning material seems to not be allowed (I forgot about that, sorry about that) I want to emphasize the most important part of my question.

Are books / online tutorials written for the old Direct X SDK still applicable for Windows 8 / 8.1 / 10 SDKs? I know that I have to use different headers and that some things have been re-named and that the DirectX Error Handling Library has been removed. Apart from the DirectX Error Handling Library, can I just re-name some functions and the code will work or are the differences more substantial?

UPDATE 2: I have found two sources that seem to be more up to date. While I have to give them a closer look, I want to post their links for anybody who has the same problem as me and who can't find proper answers with Google: http://www.directxtutorial.com/Lesson.aspx?lessonid=111-4-1

https://msdn.microsoft.com/en-us/library/ee416804(v=VS.85).aspx

If those tutorials are up to date, I might be able to figure out if the two books are still useful.

1 Answers
Related