Direct3D Rendering Cookbook
eBook - ePub

Direct3D Rendering Cookbook

Justin Stenning

  1. 430 Seiten
  2. English
  3. ePUB (handyfreundlich)
  4. Über iOS und Android verfügbar
eBook - ePub

Direct3D Rendering Cookbook

Justin Stenning

Angaben zum Buch
Buchvorschau
Inhaltsverzeichnis
Quellenangaben

Über dieses Buch

In Detail

The latest 3D graphics cards bring us amazing visuals in the latest games, from Indie to AAA titles. This is made possible on Microsoft platforms including PC, Xbox consoles, and mobile devices thanks to Direct3D - a component of the DirectX API dedicated to exposing 3D graphics hardware to programmers. Microsoft DirectX is the graphics technology powering all of today's hottest games. The latest version-DirectX 11-features tessellation for film-like geometric detail, compute shaders for custom graphics effects, and improved multithreading for better hardware utilization. With it comes a number of fundamental game changing improvements to the way in which we render 3D graphics.

Direct3D Rendering Cookbook provides detailed .NET examples covering a wide range of advanced 3D rendering techniques available in Direct3D 11.2. With this book, you will learn how to use the new Visual Studio 2012 graphics content pipeline, how to perform character animation, how to use advanced hardware tessellation techniques, how to implement displacement mapping, perform image post-processing, and how to use compute shaders for general-purpose computing on GPUs.

After covering a few introductory topics about Direct3D 11.2 and working with the API using C# and SharpDX, we quickly ramp up to the implementation of a range of advanced rendering techniques, building upon the projects we create and the skills we learn in each subsequent chapter. Topics covered include using the new Visual Studio 2012 graphics content pipeline and graphics debugger, texture sampling, normal mapping, lighting and materials, loading meshes, character animation (vertex skinning), hardware tessellation, displacement mapping, using compute shaders for post-process effects, deferred rendering, and finally bringing all of this to Windows Store Apps for PC and mobile. After completing the recipes within Direct3D Rendering Cookbook, you will have an in-depth understanding of a range of advanced Direct3D rendering topics.

Approach

This is a practical cookbook that dives into the various methods of programming graphics with a focus on games. It is a perfect package of all the innovative and up-to-date 3D rendering techniques supported by numerous illustrations, strong sample code, and concise explanations.

Who this book is for

Direct3D Rendering Cookbook is for C# .NET developers who want to learn the advanced rendering techniques made possible with DirectX 11.2. It is expected that the reader has at least a cursory knowledge of graphics programming, and although some knowledge of Direct3D 10+ is helpful, it is not necessary. An understanding of vector and matrix algebra is required.

Häufig gestellte Fragen

Wie kann ich mein Abo kündigen?
Gehe einfach zum Kontobereich in den Einstellungen und klicke auf „Abo kündigen“ – ganz einfach. Nachdem du gekündigt hast, bleibt deine Mitgliedschaft für den verbleibenden Abozeitraum, den du bereits bezahlt hast, aktiv. Mehr Informationen hier.
(Wie) Kann ich Bücher herunterladen?
Derzeit stehen all unsere auf Mobilgeräte reagierenden ePub-Bücher zum Download über die App zur Verfügung. Die meisten unserer PDFs stehen ebenfalls zum Download bereit; wir arbeiten daran, auch die übrigen PDFs zum Download anzubieten, bei denen dies aktuell noch nicht möglich ist. Weitere Informationen hier.
Welcher Unterschied besteht bei den Preisen zwischen den Aboplänen?
Mit beiden Aboplänen erhältst du vollen Zugang zur Bibliothek und allen Funktionen von Perlego. Die einzigen Unterschiede bestehen im Preis und dem Abozeitraum: Mit dem Jahresabo sparst du auf 12 Monate gerechnet im Vergleich zum Monatsabo rund 30 %.
Was ist Perlego?
Wir sind ein Online-Abodienst für Lehrbücher, bei dem du für weniger als den Preis eines einzelnen Buches pro Monat Zugang zu einer ganzen Online-Bibliothek erhältst. Mit über 1 Million Büchern zu über 1.000 verschiedenen Themen haben wir bestimmt alles, was du brauchst! Weitere Informationen hier.
Unterstützt Perlego Text-zu-Sprache?
Achte auf das Symbol zum Vorlesen in deinem nächsten Buch, um zu sehen, ob du es dir auch anhören kannst. Bei diesem Tool wird dir Text laut vorgelesen, wobei der Text beim Vorlesen auch grafisch hervorgehoben wird. Du kannst das Vorlesen jederzeit anhalten, beschleunigen und verlangsamen. Weitere Informationen hier.
Ist Direct3D Rendering Cookbook als Online-PDF/ePub verfügbar?
Ja, du hast Zugang zu Direct3D Rendering Cookbook von Justin Stenning im PDF- und/oder ePub-Format sowie zu anderen beliebten Büchern aus Computer Science & Programming in C#. Aus unserem Katalog stehen dir über 1 Million Bücher zur Verfügung.

Information

Jahr
2014
ISBN
9781849697101

Direct3D Rendering Cookbook


Table of Contents

Direct3D Rendering Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers and more
Why Subscribe?
Free Access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Downloading the color images of this book
Errata
Piracy
Questions
1. Getting Started with Direct3D
Introduction
Components of Direct3D
Device
Device context
Immediate context
Deferred context
Command lists
Swap chains
States
Resources
Textures
Resource views
Buffers
Shaders and High Level Shader Language
Stages of the programmable pipeline
The graphics pipeline
Input Assembler (IA) stage
Vertex Shader (VS) stage
Hull Shader (HS) stage
Tessellator stage
Domain Shader (DS) stage
Geometry Shader (GS) stage
Stream Output (SO) stage
Rasterizer stage (RS)
Pixel Shader (PS) stage
Output Merger (OM) stage
The dispatch pipeline
Compute Shader (CS) stage
Introducing Direct3D 11.1 and 11.2
Direct3D 11.1 and DXGI 1.2 features
Direct3D 11.2 and DXGI 1.3 features
Building a Direct3D 11 application with C# and SharpDX
Getting ready
How to do it…
How it works…
Initialization
Render loop
Finalization
There's more…
See also
Initializing a Direct3D 11.1/11.2 device and swap chain
Getting ready
How to do it…
How it works…
There's more…
See also
Debugging your Direct3D application
Getting ready
How to do it…
How it works…
There's more…
See also
2. Rendering with Direct3D
Introduction
Using the sample rendering framework
Getting ready
How to do it…
How it works…
See also
Creating device-dependent resources
Getting ready
How to do it…
How it works…
Creating size-dependent resources
Getting ready
How to do it…
How it works…
There's more…
See also
Creating a Direct3D renderer class
Getting ready
How to do it…
How it works…
See also
Rendering primitives
Getting ready
How to do it…
How it works…
Resource Initialization
Render loop
Renderers
There's more…
See also
Applying multisample anti-aliasing
Getting ready
How to do it…
How it works…
See also
Implementing texture sampling
Getting ready
How to do it…
How it works…
See also
3. Rendering Meshes
Introduction
Rendering a cube and sphere
Getting ready
How to do it…
How it works…
There's more…
Preparing the vertex and constant buffers for materials and lighting
Getting ready
How to do it…
How it works…
Using C# structures with HLSL constant buffers
See also
Adding material and lighting
Getting ready
How to do it…
Implementing diffuse shaders
Implementing Phong shaders
Implementing Blinn-Phong shaders
How it works…
UV mapping
Lighting
There's more…
See also
Using a right-handed coordinate system
How to do it…
How it works…
See also
Loading a static mesh from a file
Getting ready
How to do it…
Mesh Renderer
How it works…
There's more…
See also
4. Animating Meshes with Vertex Skinning
Introduction
Preparing the vertex shader and buffers for vertex skinning
Getting ready
How to do it…
How it works…
There's more…
See also
Loading bones in the mesh renderer
Getting ready
How to do it…
How it works…
There's more…
See also
Animating bones
Getting ready
How to do it…
How it works…
There's more…
5. Applying Hardware Tessellation
Introduction
Preparing the vertex shader and buffers for tessellation
Getting ready
How to do it…
How it works…
Tessellating a triangle and quad
Getting ready
How to do it…
How it works…
There's more…
See also
Tessellating bicubic Bezier surfaces
Getting ready
How to do it…
How it works…
There's more…
Parametric surfaces
See also
Refining meshes with Phong tessellation
Getting ready
How to do it…
How it works…
There's more…
See also
Optimizing tessellation through back-face culling and dynamic Level-of-Detail
Getting ready
How to do it…
Back-face culling using face normal vectors
Back-face culling using vertex normal vectors
Dynamic Level-of-Detail (LoD) near silhouettes
How it works…
There's more…
See also
6. Adding Surface Detail with Normal and Displacement Mapping
Introduction
Referencing multiple textures in a material
How to do it…
How it works…
Adding surface detail with normal mapping
Getting ready
How to do it...
How it works…
There's more…
See also
Adding surface detail with displacement mapping
Getting ready
How to do it...
How it works...
There's more…
See also
Implementing displacement decals
Getting reading
How to do it…
How it works…
There's more…
Optimizing tessellation based on displacement decal (displacement adaptive tessellation)
Getting ready
How to do it…
How it works…
There's more…
7. Performing Image Processing Techniques
Introduction
Running a compute shader – desaturation (grayscale)
Getting ready
How to do it…
How it works…
There's more…
See also
Adjusting the contrast and brightness
Getting ready
How to do it…
How it works…
There's more…
See also
Implementing box blur using separable convolution filters
How to do it…
How it works…
There's more…
Implementing a Gaussian blur filter
Getting ready
How to do it…
How it works…
There's more…
Detecting edges with the Sobel edge-detection filter
Getting ready
How to do it…
How it works…
There's more…
See also
Calculating an image's luminance histogram
How to do it…
How it works…
There's more…
8. Incorporating Physics and Simulations
Introduction
Using a physics engine
Getting ready
How to do it…
How it works…
There's more…
See also
Simulating ocean waves
Getting ready
How to do it…
How it works…
There's more…
See also
Rendering particles
Getting ready
How to do it…
How it works…
There's more…
See also
9. Rendering on Multiple Threads and Deferred Contexts
Introduction
Benchmarking multithreaded rendering
Getting ready
How to do it…
How it works…
There's more…
See also
Implementing multithreaded dynamic cubic environment mapping
Getting ready
How to do it…
How it works…
There's more…
Implementing dual paraboloid environment mapping
Getting ready
How to do it…
How it works…
See also
10. Implementing Deferred Rendering
Introduction
Filling the G-Buffer
Getting ready
How to do it…
How it works…
There's more…
See also
Implementing a screen-aligned quad renderer
How to do it…
How it works…
There's more…
See also
Reading the G-Buffer
Getting ready
How to do it…
How it works…
See also
Adding multiple lights
Getting ready
H...

Inhaltsverzeichnis

Zitierstile für Direct3D Rendering Cookbook

APA 6 Citation

Stenning, J. (2014). Direct3D Rendering Cookbook (1st ed.). Packt Publishing. Retrieved from https://www.perlego.com/book/390826/direct3d-rendering-cookbook-pdf (Original work published 2014)

Chicago Citation

Stenning, Justin. (2014) 2014. Direct3D Rendering Cookbook. 1st ed. Packt Publishing. https://www.perlego.com/book/390826/direct3d-rendering-cookbook-pdf.

Harvard Citation

Stenning, J. (2014) Direct3D Rendering Cookbook. 1st edn. Packt Publishing. Available at: https://www.perlego.com/book/390826/direct3d-rendering-cookbook-pdf (Accessed: 14 October 2022).

MLA 7 Citation

Stenning, Justin. Direct3D Rendering Cookbook. 1st ed. Packt Publishing, 2014. Web. 14 Oct. 2022.