Start reading Direct3D Rendering Cookbook on your Kindle in under a minute. Don't have a Kindle? Get your Kindle here or start reading now with a free Kindle Reading App.

Deliver to your Kindle or other device


Try it free

Sample the beginning of this book for free

Deliver to your Kindle or other device

Anybody can read Kindle books—even without a Kindle device—with the FREE Kindle app for smartphones, tablets and computers.
Direct3D Rendering Cookbook

Direct3D Rendering Cookbook [Kindle Edition]

Justin Stenning
4.5 out of 5 stars  See all reviews (2 customer reviews)

Print List Price: £33.99
Kindle Price: £21.62 includes VAT* & free wireless delivery via Amazon Whispernet
You Save: £12.37 (36%)
* Unlike print books, digital books are subject to VAT.


Amazon Price New from Used from
Kindle Edition £21.62  
Paperback £33.99  
Kindle Daily Deal
Kindle Daily Deal: At least 60% off
Each day we unveil a new book deal at a specially discounted price--for that day only. Learn more about the Kindle Daily Deal or sign up for the Kindle Daily Deal Newsletter to receive free e-mail notifications about each day's deal.

Special Offers and Product Promotions

  • Between 20-26 October 2014, spend £10 in a single order on item(s) dispatched from and sold by and receive a £2 promotional code to spend in the Amazon Appstore. Here's how (terms and conditions apply)

Customers Who Bought This Item Also Bought

Product Description

Product Description

In Detail

The latest 3D graphics cards bring us amazing visuals in the latest games, from Indie to AAA titles. This is made possible on Microsoft® platforms including PC, Xbox consoles, and mobile devices thanks to Direct3D – a component of the DirectX API dedicated to exposing 3D graphics hardware to programmers. Microsoft DirectX is the graphics technology powering all of today's hottest games. The latest version— DirectX 11—features tessellation for film-like geometric detail, compute shaders for custom graphics effects, and improved multithreading for better hardware utilization. With it comes a number of fundamental game changing improvements to the way in which we render 3D graphics.

Direct3D Rendering Cookbook provides detailed .NET examples covering a wide range of advanced 3D rendering techniques available in Direct3D 11.2. With this book, you will learn how to use the new Visual Studio 2012 graphics content pipeline, how to perform character animation, how to use advanced hardware tessellation techniques, how to implement displacement mapping, perform image post-processing, and how to use compute shaders for general-purpose computing on GPUs.

After covering a few introductory topics about Direct3D 11.2 and working with the API using C# and SharpDX, we quickly ramp up to the implementation of a range of advanced rendering techniques, building upon the projects we create and the skills we learn in each subsequent chapter. Topics covered include using the new Visual Studio 2012 graphics content pipeline and graphics debugger, texture sampling, normal mapping, lighting and materials, loading meshes, character animation (vertex skinning), hardware tessellation, displacement mapping, using compute shaders for post-process effects, deferred rendering, and finally bringing all of this to Windows Store Apps for PC and mobile. After completing the recipes within Direct3D Rendering Cookbook, you will have an in-depth understanding of a range of advanced Direct3D rendering topics.


This is a practical cookbook that dives into the various methods of programming graphics with a focus on games. It is a perfect package of all the innovative and up-to-date 3D rendering techniques supported by numerous illustrations, strong sample code, and concise explanations.

Who this book is for

Direct3D Rendering Cookbook is for C# .NET developers who want to learn the advanced rendering techniques made possible with DirectX 11.2. It is expected that the reader has at least a cursory knowledge of graphics programming, and although some knowledge of Direct3D 10+ is helpful, it is not necessary. An understanding of vector and matrix algebra is required.

About the Author

Justin Stenning

Justin Stenning, a software enthusiast since DOS was king, has been working as a software engineer since he was 20. He has been the technical lead on a range of projects, from enterprise content management and software integrations to mobile apps, mapping, and biosecurity management systems. Justin has been involved in a number of open source projects, including capturing images from fullscreen Direct3D games and displaying in-game overlays, and enjoys giving a portion of his spare time to the open source community. Justin completed his Bachelor of Information Technology at Central Queensland University, Rockhampton. When not coding or gaming, he thinks about coding or gaming, or rides his motorbike. Justin lives with his awesome wife, and his cheeky and quirky children in Central Victoria, Australia.

Product details

  • Format: Kindle Edition
  • File Size: 6425 KB
  • Print Length: 430 pages
  • Publisher: Packt Publishing (20 Jan 2014)
  • Sold by: Amazon Media EU S.à r.l.
  • Language: English
  • Text-to-Speech: Enabled
  • X-Ray:
  • Average Customer Review: 4.5 out of 5 stars  See all reviews (2 customer reviews)
  • Amazon Bestsellers Rank: #398,507 Paid in Kindle Store (See Top 100 Paid in Kindle Store)
  •  Would you like to give feedback on images?

More About the Author

Discover books, learn about writers, and more.

Customer Reviews

3 star
2 star
1 star
4.5 out of 5 stars
4.5 out of 5 stars
Most Helpful Customer Reviews
1 of 1 people found the following review helpful
Format:Kindle Edition
Learning graphics programming is a lot more difficult than it used to be. The complexity and scale of graphics APIs has grown over the years; the initial learning curve is steeper that in previous versions of DirectX, and the sheer number of different algorithms and techniques that are required for even the more basic features of a typical modern video game mean that it is a daunting prospect for any beginner to aspire to create their own graphics applications or games. Justin Stenning's book will be a valuable reference to anyone who wants to learn graphics programming from the ground up, and it will also be useful to more experienced programmers who want to learn about specific techniques that they may not have implemented before, such as hardware tessellation, deferred contexts and image processing, for example.

The title of the book, and the brief synopsis at the start of the book gave me the impression that this was a book of specific rendering techniques for experienced programmers, akin to the GPU Gems series, for example. However, in the opening chapters, the book is much more geared towards beginners and those who are new to DirectX 11, before exploring an assortment of techniques that will be of wider interest.

I am impressed by the writing style. From start to finish, each topic is explained clearly in detailed step-by-step instructions. Personally, I like the clarity of this approach, but beginners should take note: make sure you read each step thoroughly and understand the purpose of every line of code, otherwise this style of tuition can degenerate into a typing exercise. You might get through each chapter with your code working as intended, but without understanding why it works.
Read more ›
Comment | 
Was this review helpful to you?
1 of 1 people found the following review helpful
Direct3D rendering cookbook is the only book I am aware of that covers the combination of C# programming and the DirectX 11 API. This is the book I would have liked to have when I taught myself how to use the DirectX API.

The book is mainly aimed at those who would like to start learning a 3D graphic library and have already a sound C# programming background. It starts by giving the reader the basic knowledge on how to set up a DirectX application. Each chapter follows a clear structure by focusing on a particular topic. Source code is given and then explained in “How it works” sections. Once you know the basics, you will find that the topics covered are very up to date with the features of modern 3D engines. Indeed, aside from the fundamental core concepts of rendering meshes it also covers advanced topics such as physics, deferred rendering and multithreading.

This book is however not about 3D engine architecture. So if you expect this book to guide you from start to finish in the development of an application or a game you are likely to be disappointed. Faithful to its name, the book reports a set of rendering techniques. Indeed concepts such as input or sound are not covered. The techniques described by the book contain the minimum amount of code necessary for their implementation. However, you will find that unless you want to build standalone demos, it is necessary for a lot more work in order to put everything together in a meaningful application or game. Considering the target audience, I think the book lost an opportunity to introduce the fundamental concepts of 3D engine architecture.

In conclusion, I believe the book is an excellent match for those who wish to learn how to use C# to build 3D applications. SharpDX also has a good community around it, so you are likely to find support once you become ready to work on your own.
Comment | 
Was this review helpful to you?
Most Helpful Customer Reviews on (beta) 3.8 out of 5 stars  5 reviews
2 of 2 people found the following review helpful
4.0 out of 5 stars Useful for beginners and as a reference later 14 Feb 2014
By Michael Quandt - Published on
If you saw "cookbook" in the title and are looking for a collection of techniques that you can use for rendering, this book may not be your best fit as it spends a fair amount of time covering Direct3D setup, basic techniques and supporting concepts such as physics and multi-threaded rendering. That said, the book is a great starting point for those looking to jump into 3D rendering, and even remains relevant once the basics have been covered by providing reference information about advanced shaders and techniques that you may want to make use of later.
This is also one of the few books I have seen that covers multi-threaded rendering (increasingly relevant in modern engines), deferred shading and GPGPU techniques (physics even) outside of expert reference books such as what you would find in the GPU Pro series.

The majority of the book uses sets of instructions to implement each technique, with explanations left to the end, once you're done implementing the technique. This may force you to jump around a bit if you do not understand certain parts of the technique and can't wait until you've finished every step. This book is most effective if you read ahead, gain an understanding of the technique and then follow the steps to implement. You won't be flipping pages back and forth, and all of the instructions are in one place, making it much easier to find each step.

As you work through each technique and concept the author also provides some extra reading on the topic, which enables you to learn further or find answers to any questions you may have.

I would recommend this book to anyone who is interested in having a solid resource for 3D development that will last them past the basics. You will need to understand C# if you do not already to get the most out of this book, and if you want to use this for game development then you will need to look elsewhere for every other aspect, however supplemented by other learning, this book can be very useful.

I received a copy of this book from Packt Publishing for review purposes.
3.0 out of 5 stars The gist of the book feels like its tagline should be "Learn DirectX 27 July 2014
By J. Lipstate - Published on
Format:Paperback|Verified Purchase
I am currently in chapter two, and have perhaps 8 hours invested in this book, working through the text and studying the accompanying code. I will revise my review (and opinion) as I progress further through the book.

The gist of the book feels like its tagline should be "Learn DirectX, if you already know DirectX", to which point one must ask, why do i need the book? That sounds harsh, and perhaps is a little, i am finding value, but it is requiring far more digging than I'd have expected. The book feels as though the author was cornered into a very tight schedule, and the editor hacked the book into disjointed pieces.
I give 3 stars as it has value, but with some polishing the transfer of knowledge would have been much smoother to a broad audience.

note: prior to even reading the preface, I hand marked all errata available against the book (3 grammatical errors. :\)

Chapter 1:
Reasonably easy to follow, about 2 hours of study. It starts out with a brief description of what everything is, and then implements it, and then explains what each line meant. I liked this chapter overall.
P42, PresentFlags.RestrictToOutput is not present in DX11.0, I used ".Restart" instead and looked at the output, similar effect to the author's intent.
Chapter 2:
This chapter seems very disjointed, and disappointing. First, the code examples in the book are of the nature:
public class D3DApp : D3DApplicationDesktop
public PrimativesApp (Form window) : base(window) {}
two things bugged me, one the constructor wasn't name correctly in print, and two, the '...', There is a lot of dot dot dot in this chapter, and for good reason, the chapter implements a Common library with all kinds of goodies. But the ... kills me in that when i compare my code I'm writing to the example, the first example has jumped to ~300 lines of code. Its more or less left unexplained. The chapter then jumps to disposal and re initialization of COM objects for window resizing, to which point i start wondering, where is my triangle on the screen?

side note: After a few hours of frustration (error: "Copy" returns with -1), I discovered the CH2+ projects only open if run via the .SLN file at the top level of the demo code & Right click -> Set as start up project to get your specific project. probably my fault for not noticing the sln file till then.

To help you gage how relevant my review is for you, this is my background/motivation:
I have no prior experience with DirectX, or OpenGL. I purchased this book as well as Computer Graphics 3rd ed. (quickly learned that was not a self-study book) in order to teach myself 3D Graphics. I do understand matrix math pretty well, used MATLAB extensively in college to that end (physics/Engineering projects).

My level of experience is lambdas make me feel squirmy on the inside, but i can work my way through them. (~1 yr of hobby programming)
4.0 out of 5 stars Less a Cookbook; More a Comprehensive Introduction 3 Mar 2014
By Timothy H. Mensch - Published on
As a basic introduction to how DirectX 11 usage, this book seems great so far. I've used previous versions of DirectX, so I can't comment on how clear it would be for a complete beginner, but for someone who already knows the basics it was certainly very easy to follow. And it does a great job of explaining advanced fundamentals, touching on most topics you'll need to understand as a DirectX programmer, which is great. You'll find information on the latest 11.1 and 11.2 interfaces as well, in case you want to target Windows 8-only features.

That said, past the first few chapters (which describe both the native interfaces and the C# interfaces), the book focuses almost entirely on C#/.NET examples.

As a developer who has avoided using managed code in games, this is not the way I'd personally prefer to see my examples. On the other hand, C# examples are almost always cleaner than the equivalent C/C++ code would have been, just due to the overhead of the native COM interfaces.

Overall it seems like a great buy if you're looking to update your skills to cover the latest DirectX technologies.
4.0 out of 5 stars Interesting topics with good execution 19 Feb 2014
By Bartlomiej F. - Published on
Format:Kindle Edition
The whole book contains a lot of recipes but I do not know it this was a best solution and form. For instance the first two chapters take almost 90 pages of the book and they introduce to the framework and DirectX. The recipes included in those chapters create a steps in huge tutorial. I would prefer much loose style of a recipe. Still the chapters have good quality.

When we finish the introduction then we are able to get more interesting topics. Basically all you need to know in modern graphics programming is here! Decent number of examples, codes, pictures, diagrams is another advantage. Probably most of people should understand the content and be able to implement examples on their own.

We have topics about loading meshes (from FBX files converted to CMO).There is also a great and very detailed chapter about skinning and mesh animations. Another worth to mention topics are about Displacement and Normal Mapping - plus Hardware Tessellation as a background topic for that.

Chapter regarding Image Processing seems to be a standard in all GFX books but this time I was happy to see all the techniques using Compute Shaders. Incorporated with lots of examples and diagrams should be easy to understand.

After reading the chapter about Physics readers will be able to implement nice looking water and use Bullet physics.

There is also an interesting chapter about deferred context in D3D. It seems that they are powerful, but everyone expected that this technique will provide more performance improvements. As a background examples for deferred context there are recipes about rendering environment maps.

The last two chapters describe Deferred rendering and how to connect D3D with Xaml and Windows 8.1.

A lot of knowledge + interesting topics + good execution.

Worth buying!
4.0 out of 5 stars I liked it :) 18 Feb 2014
By Charles Humphrey - Published on
I loved this book, even if you are not a C# developer, you can port/include these techniques to/in your C++ engine. If you are just starting out, this may not be the book for you, if you have been working with earlier versions of DirectX and looking for an interesting read, then I don’t think you can go wrong with this book.
Were these reviews helpful?   Let us know
Search Customer Reviews
Only search this product's reviews

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
First post:
Prompts for sign-in

Search Customer Discussions
Search all Amazon discussions

Look for similar items by category