Practical Rendering and Computation with Direct3D 11  book cover
1st Edition

Practical Rendering and Computation with Direct3D 11

ISBN 9781568817200
Published July 27, 2011 by A K Peters/CRC Press
648 Pages

SAVE ~ $18.19
was $90.95
USD $72.76

Prices & shipping based on shipping country


Book Description

Direct3D 11 offers such a wealth of capabilities that users can sometimes get lost in the details of specific APIs and their implementation. While there is a great deal of low-level information available about how each API function should be used, there is little documentation that shows how best to leverage these capabilities. Written by active members of the Direct3D community, Practical Rendering and Computation with Direct3D 11 provides a deep understanding of both the high and low level concepts related to using Direct3D 11.

The first part of the book presents a conceptual introduction to Direct3D 11, including an overview of the Direct3D 11 rendering and computation pipelines and how they map to the underlying hardware. It also provides a detailed look at all of the major components of the library, covering resources, pipeline details, and multithreaded rendering. Building upon this material, the second part of the text includes detailed examples of how to use Direct3D 11 in common rendering scenarios. The authors describe sample algorithms in-depth and discuss how the features of Direct3D 11 can be used to your advantage.

All of the source code from the book is accessible on an actively maintained open source rendering framework. The sample applications and the framework itself can be downloaded from

By analyzing when to use various tools and the tradeoffs between different implementations, this book helps you understand the best way to accomplish a given task and thereby fully leverage the potential capabilities of Direct3D 11.


Key Features

  • Presents the high level concepts used to design algorithms
  • Describes the nuts and bolts of how to implement the algorithms
  • Explains each of the major components of the Direct3D 11 library
  • Shows how Direct3D 11 can be used in a variety of real-world situations
  • Provides source code and sample programs on a supplementary website

Table of Contents

Overview of Direct3D 11
Direct3D Framework
Interfacing with Direct3D
Getting Started

Direct3D 11 Resources
Resources Overview
Resources in Detail
Resource Manipulations

The Rendering Pipeline
Pipeline State
Pipeline Execution
Input Assembler
Vertex Shader
Hull Shader
Domain Shader
Geometry Shader
Stream Output
Pixel Shader
Output Merger
High-Level Pipeline Functions

The Tessellation Pipeline 
Tessellation and the Direct3D Pipeline
Parameters for Tessellation
Effects of Parameters

The Computation Pipeline
DirectCompute Threading Model
DirectCompute Memory Model
Thread Synchronization
Algorithm Design

High Level Shading Language
Usage Process
Language Basics
Constant Buffers
Resource Objects
Dynamic Shader Linkage
Intrinsic Functions
Shader Reflection
Using fxc.exe

Multithreaded Rendering
Motivations for Multithreaded Rendering
Direct3D 11 Threading Model
Context Pipeline State Propagation
Potential Usage Scenarios
Practical Considerations and Tips

Mesh Rendering
Mesh Transformations
Vertex Skinning
Vertex Skinning with Displacement Mapping

Dynamic Tessellation
Terrain Tessellation
Higher-Order Surfaces

Image Processing
Image Processing Primer
Gaussian Filter
Bilateral Filter

Deferred Rendering
Classic Deferred Rendering
Light Pre-Pass Deferred Rendering

Water Simulation
Particle Systems

Multithreaded Paraboloid Rendering
Implementation Design
Multithreading Scenario

Appendix A: Source Code
Appendix B: Direct3D 11 Queries
Appendix C: Tessellation Summary



View More


Practical Rendering and Computation with Direct3D 11 packs in documentation and in-depth coverage of basic and high-level concepts related to using Direct 3D 11 and is a top pick for any serious programming collection. … perfect for a wide range of users. Any interested in computation and multicore models will find this packed with examples and technical applications.
Midwest Book Review, October 2011

The authors have generously provided us with an optimal blend of concepts and philosophy, illustrative figures to clarify the more difficult points, and source code fragments to make the ideas concrete. Of particular interest is the chapter on multithreaded rendering, a topic that is essential in a multicore world. Later chapters include many examples such as skinning and displacement, dynamic tessellation, image processing (to illustrate DirectCompute), deferred rendering, physics simulations, and multithreaded paraboloid mapping. As if all this is not enough, the authors have made available their source code, called Hieroglyph 3. Books do not get any better than this!
—David Eberly, Geometric Tools