Direct3D Rendering Cookbook by Justin Stenning is a practical guide which introduces DirectX 11.x technology in order to develop Win32 and Win Store applications. This book is good reference for those programmers who want to start developing DirectX applications using C# and SharpDX (SharpDX is an open-source project delivering the full DirectX API under the .Net).
As prerequisite, the reader has at least the basic knowledge of C# programming along with a cursory knowledge of Direct3D 10 or the newer versions. However an understanding of basic vector and matrix algebra is required. This book consists of eleven chapters:
- Chapter one, Getting Started with Direct3D, covers an introduction to building and debugging the first Direct3D application using C# and SharpDX.
- Chapter two, Rendering with Direct3D, covers how to render primitives and how to apply multi-sample Anti-Aliasing. Also explains texture sampling.
- Chapter three, Rendering Meshes, covers how to render a cube and sphere using buffers in Direct3D and how to adding light and material to them. Final section of this chapter explains how to load a static mesh from a file.
- Chapter four, Animating Meshes with Vertex Skinning, covers how a bone structure can be used in order to animating the vertices, also explains how to interact with compiled mesh object (CMO) files.
- Chapter five, Applying Hardware Tessellation, introduces tessellation and also learns how to optimizing tessellation through back-face culling and Level-of-Detail.
- Chapter six, Adding Surface Detail with Normal and Displacement Mapping, this chapter covers normal and displacement mapping, also learns how to implement displacement decals and displacement adaptive tessellation.
- Chapter seven, Performing Image Processing Techniques, outlines the post processing techniques such as Box blur, Gaussian blur, Sobel edge-detection filter and image’s luminance histogram using Compute Shader (DirectCompute).
- Chapter eight, Incorporating Physics and Simulations, covers how to support simulation of physics, ocean waves in the scene. at the final section of this chapter you will learn how to implement a simple particle system on the GPU.
- Chapter nine, Rendering on Multiple Threads and Deferred Contexts, explains how to use multi-threaded rendering in order to implement dynamic cubic environment mapping and dual paraboloid environment mapping.
- Chapter ten, Implementing Deferred Rendering, presents the classic deferred rendering technique.
- Chapter eleven, Integrating Direct3D with XAML and Windows 8.1, helps you to understand how to compose XAML and Direct3D. And the final section of this book demonstrates loading and compiling resources asynchronously.
The last words
This is a good book with 413 pages and provides a lot of advanced 3D rendering techniques. Although the Direct2D is missing but it is a good start point for .Net developers who want to learn 3D game programming.
Congratulation to the Justin & PackT‘s Staff.