Cover image for Direct3D Rendering Cookbook.
Direct3D Rendering Cookbook.
Title:
Direct3D Rendering Cookbook.
Author:
Stenning, Justin.
ISBN:
9781849697118
Personal Author:
Physical Description:
1 online resource (470 pages)
Contents:
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 -- How to do it… -- How it works… -- There's more… -- See also -- Incorporating multisample anti-aliasing -- Getting ready -- How to do it… -- How it works… -- There's more… -- See also.

11. Integrating Direct3D with XAML and Windows 8.1 -- Introduction -- Preparing the swap chain for a Windows Store app -- Getting ready -- How to do it… -- How it works… -- See also -- Rendering to a CoreWindow -- How to do it… -- How it works… -- There's more… -- See also -- Rendering to an XAML SwapChainPanel -- How to do it… -- How it works… -- There's more… -- See also -- Loading and compiling resources asynchronously -- Getting ready -- How to do it… -- How it works… -- There's more… -- See also -- A. Further Reading -- Index.
Abstract:
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.Direct3D Rendering Cookbook is for C# .NET developers who want to learn the advanced rendering techniques made possible with DirectX 11.1. 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.
Local Note:
Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2017. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries.
Electronic Access:
Click to View
Holds: Copies: