Introduction to 3D Game Programming with DirectX12
ISBN: 978-1-942270-06-5
Pub Date: March 2016
Specs: 7 x 9 Paperback with DVD
Pages: 900
Price: $54.95
This updated bestseller provides an introduction to programming interactive computer graphics, with an emphasis on game development using DirectX 12. The book is divided into three main parts: basic mathematical tools, fundamental tasks in Direct3D, and techniques and special effects. It shows how to use new Direct12 features such as command lists, pipeline state objects, descriptor heaps and tables, and explicit resource management to reduce CPU overhead and increase scalability across multiple CPU cores. The book covers modern special effects and techniques such as hardware tessellation, writing compute shaders, ambient occlusion, reflections, normal and displacement mapping, shadow rendering, and character animation. The print book includes a companion DVD with code and figures, this information is available for download for E-Book purchases.
FEATURES
- Provides an introduction to programming interactive computer graphics, with an emphasis on game development using DirectX 12
- Uses new Direct3D 12 features to reduce CPU overhead and take advantage of multiple CPU cores
- Contains detailed explanations of popular real-time game effects
- Includes a DVD with source code and all the images (including 4-color) from the book
- Learn advance rendering techniques such as ambient occlusion, real-time reflections, normal and displacement mapping, shadow rendering, programming the geometry shader, and character animation
- Covers a mathematics review and 3D rendering fundamentals such as lighting, texturing, blending and stenciling
- Use the end-of-chapter exercises to test understanding and provide experience with DirectX 12
TABLE OF CONTENTS
Part I — Mathematical Prerequisites. Vector Algebra. Matrix Algebra. Transformations
Part II — Direct3D Foundations. Direct3D Initialization. The Rendering Pipeline. Drawing in Direct3D (Part 1). Drawing in Direct3D (Part 2). Lighting. Texturing. Blending. Stenciling. The Geometry Shader. The Compute Shader. The Tessellation Stages.
Part III —Topics. Building A First Person Camera & Dynamic Indexing. Instancing and Frustum Culling. Picking. Cube Mapping. Normal Mapping. Shadow Mapping. Ambient Occlusion. Quaternions. Character Animation. Appendices. Introduction to Windows Programming. High-Level Shader Language Reference. Some Analytic Geometry. Solutions to Selected Exercises (on disc). Index.
Errata
The below is a comment at page 351, 389, 415, 509, 553, 561, 637, 680, 739.
// Assumes nonuniform scaling;
It should read
// Assumes "no" nonuniform scaling;
ABOUT THE AUTHOR
Frank D. Luna has been programming interactive 3D graphics with DirectX for more than fifteen years. He is the author of three bestselling books on DirectX and has worked in 3D medical visualization, 3D architectural design software, and gaming. He holds a BS in mathematics from the University of California, Irvine.