Real-Time 3D Rendering with DirectX and HLSL A Practical Guide to Graphics Programming

  • ISBN13:


  • ISBN10:


  • Edition: 1st
  • Format: Paperback
  • Copyright: 2014-05-19
  • Publisher: Addison-Wesley Professional
  • Purchase Benefits
  • Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $59.99 Save up to $2.40
  • eBook
    Add to Cart


Supplemental Materials

What is included with this book?

  • The eBook copy of this book is not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.


Get Started Quickly with DirectX 3D Programming: No 3D Experience Needed

This step-by-step text demystifies modern graphics programming so you can quickly start writing professional code with DirectX and HLSL. Expert graphics instructor Paul Varcholik starts with the basics: a tour of the Direct3D graphics pipeline, a 3D math primer, and an introduction to the best tools and support libraries.

Next, you’ll discover shader authoring with HLSL. You’ll implement basic lighting models, including ambient lighting, diffuse lighting, and specular highlighting. You’ll write shaders to support point lights, spotlights, environment mapping, fog, color blending, normal mapping, and more.
Then you’ll employ C++ and the Direct3D API to develop a robust, extensible rendering engine. You’ll learn about virtual cameras, loading and rendering 3D models, mouse and keyboard input, and you’ll create a flexible effect and material system to integrate your shaders.

Finally, you’ll extend your graphics knowledge with more advanced material, including post-processing techniques for color filtering, Gaussian blurring, bloom, and distortion mapping. You’ll develop shaders for casting shadows, work with geometry and tessellation shaders, and implement a complete skeletal animation system for importing and rendering animated models.

You don’t need any experience with 3D graphics or the associated math: Everything’s taught hands-on, and all graphics-specific code is fully explained.
Coverage includes

•    The Direct3D API and graphics pipeline
•    A 3D math primer: vectors, matrices, coordinate systems, transformations, and the DirectX Math library
•    Free and low-cost tools for authoring, debugging, and profiling shaders
•    Extensive treatment of HLSL shader authoring
•    Development of a C++ rendering engine
•    Cameras, 3D models, materials, and lighting
•    Post-processing effects
•    Device input, component-based architecture, and software services
•    Shadow mapping, depth maps, and projective texture mapping
•    Skeletal animation
•    Geometry and tessellation shaders
•    Survey of rendering optimization, global illumination, compute shaders, deferred shading, and data-driven engine architecture

Author Biography

Paul Varcholik is a software engineer and teacher. He has been developing software, as a profession, for the past 19 years. He received a Bachelors in Computer Science in 1998 and began teaching at the college-level that same year. He co-founded an Internet Service Provider in 1995, but left the Internet business in 2003 to chase his true passion, video games. He was a Lead Software Engineer for Electronic Arts until 2006 working on titles including John Madden NFL Football and Superman Returns. He then pursued a full-time teaching role and received his Ph.D. in Modeling & Simulation in 2011. Paul is currently a professor at the Florida Interactive Entertainment Academy (FIEA) a Masters program in game development at the University of Central Florida. He is also an instructor at Seminole State College where he teaches classes in game development, iPhone programming and programming in C#. He has published a number of academic articles along with his Ph.D. dissertation.

Table of Contents

Part 0: An Introduction to 3D Rendering

1 Introducing DirectX

2 A 3D/Math Primer

3 Tools of the Trade

Part 1: Shader Authoring with HLSL

4 Hello, Shaders!

5 Texture Mapping

6 Lighting Models

7 Additional Lighting Models

8 Gleaming the Cube

9 Fog, Blending, and Normal Mapping

Part 2: Rendering with DirectX

10 Rendering Engine: Library Project

11 Rendering Engine: Game Project

12 Rendering Engine: Supporting Systems

13 Shader Integration

14 Models

15 Lighting

16 Animation

Part 3: Intermediate-Level Rendering Topics

17 Multi-Pass Rendering

18 Post Processing

19 Shader Optimization

20 Space Partitioning and Object Culling

21 Additional Topics in Modern Rendering

Part 4: Appendices

A HLSL Reference

B Standard Annotations and Semantics (SAS)

Rewards Program

Write a Review