O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

DirectX 11.1 Game Programming

Book Description

DirectX 11 is packed with features to meet the demands of modern gamers, multi-core processors, and the latest Microsoft operating systems. This tutorial gives you access to all that with an example-led, user-friendly approach.

  • Learn new features in Direct3D 11.1
  • Discover how to develop a multithreaded pipeline game engine
  • Understand shader model 5 and learn how to create an editor for the game

In Detail

DirectX is designed to create eye-popping 3-D visuals and immersive sound effects found in many of today's PC games. DirectX 11.1 includes numerous improvements from its previous version. It's designed to be more efficient, leverage the power of today's multi-core processors, and provide support for sophisticated shading and texturing techniques such as tessellation.

DirectX 11.1 Game Programming brings unprecedented power and flexibility to programmers who want to excel in graphical programs. DirectX 11.1 Game Programming is an introduction to creating interactive computer graphics and games, using Direct3D 11.1. You would be guided through the new features of Direct3D along with XAML to build an extensible multithreaded framework for creating 3D applications and games on the Windows 8 metro style platform.

DirectX 11.1 Game Programming explores the techniques to set up a 3D multithreaded framework for metro style graphics programs. You would be guided through the process of extending your framework to utilize the advantages of Direct3D 11.1.

We would then explore Visual Studio Model editor for loading and editing your assets and learn how to render them with the Direct3D pipeline. We will also explore the supporting inputs such as keyboards, pointers, Xbox controllers, and how to render the complete 3D scene using camera, sound, billboard, tessellation, post processors, and parallel libraries, along with supporting XAML. You would also learn the different techniques of debugging the program and would be well equipped with everything you need to start programming 3D applications and games with DirectX 11.1 on Windows 8 platforms.

Table of Contents

  1. DirectX 11.1 Game Programming
    1. Table of Contents
    2. DirectX 11.1 Game Programming
    3. Credits
    4. About the Author
    5. About the Reviewers
    6. www.PacktPub.com
      1. Support files, eBooks, discount offers and more
        1. Why Subscribe?
        2. Free Access for Packt account holders
    7. Preface
      1. What this book covers
      2. What you need for this book
      3. Conventions
      4. Reader feedback
      5. Customer support
        1. Downloading the example code
        2. Errata
        3. Piracy
        4. Questions
    8. 1. Say Hello to DirectX 11.1
      1. The need for DirectX 11.1
        1. Why should we target Windows 8?
      2. The prerequisites
      3. Introduction to C++/CX
        1. Lifetime management
          1. What is a ref class?
        2. Inheritance
        3. Delegates and events
      4. Metro Style apps
      5. Setting up your first project
      6. Building your first Metro app
      7. Working with game time
      8. Initializing the device
        1. Connecting to a swap chain
        2. The render target and depth stencil views
      9. Summary
    9. 2. Getting Started with HLSL
      1. An introduction to HLSL
      2. New features of HLSL
      3. Compiling and linking to shaders
      4. Buffers in Direct3D
        1. Constant buffers
        2. Vertex buffers
        3. Index buffers
        4. Textures
      5. Rendering primitives
      6. Direct2D 1.1
      7. Summary
    10. 3. Rendering a 3D Scene
      1. Displaying the performance data
        1. A short introduction to FPS
      2. Asynchronous loading
        1. Introduction to tasks
        2. Asynchronous resource loading
      3. Getting started with the Model Editor
      4. Loading a model from the .cmo format
      5. Rendering a model
      6. The input devices we'll need
        1. Keyboard
        2. Pointer
        3. Xbox 360 controllers
      7. Turn on the camera
        1. Base camera
        2. First person camera
        3. Third person camera
      8. Composing XAML and Direct3D
      9. Summary
    11. 4. Tessellation
      1. Hardware tessellation
        1. The most popular usage of hardware tessellation
      2. Basic tessellation
        1. The Hull Shader stage
        2. The Domain Shader stage
        3. Tessellating a quad
      3. Displacement mapping using tessellation
        1. The normal mapping technique
        2. The displacement mapping technique
      4. DirectX graphics diagnostics
        1. Capturing the frame
        2. The Graphics Experiment window
        3. Investigating a missing object
        4. Disabling graphics diagnostics
      5. Summary
    12. 5. Multithreading
      1. C++ AMP
      2. Compute Shader
      3. C++ AMP versus Compute Shader
      4. Post-processing
        1. Implementing post-processing using C++ AMP
        2. Implementing post-processing using Compute Shader
      5. Summary
    13. Index