Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Direct3D Rendering Cookbook

You're reading from   Direct3D Rendering Cookbook For C# .NET developers this is the ultimate cookbook for Direct3D rendering in PC games. Covering all the latest innovations, it teaches everything from debugging to character animation, supported throughout by illustrations and sample code.

Arrow left icon
Product type Paperback
Published in Jan 2014
Publisher
ISBN-13 9781849697101
Length 430 pages
Edition Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
Justin Stenning Justin Stenning
Author Profile Icon Justin Stenning
Justin Stenning
Arrow right icon
View More author details
Toc

Table of Contents (19) Chapters Close

Direct3D Rendering Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
1. Getting Started with Direct3D FREE CHAPTER 2. Rendering with Direct3D 3. Rendering Meshes 4. Animating Meshes with Vertex Skinning 5. Applying Hardware Tessellation 6. Adding Surface Detail with Normal and Displacement Mapping 7. Performing Image Processing Techniques 8. Incorporating Physics and Simulations 9. Rendering on Multiple Threads and Deferred Contexts 10. Implementing Deferred Rendering 11. Integrating Direct3D with XAML and Windows 8.1 Further Reading
Index

Incorporating multisample anti-aliasing


One of the problems with classic deferred rendering is that to support the built-in hardware anti-aliasing, we must implement some extra shader code to correctly sample from the MSAA G-Buffer. More recent improvements in Direct3D have made this problem easy to solve by using the SV_SampleIndex and SV_Coverage pixel shader system-value semantics to run the shader for each sample and to determine which samples are covered by the current fragment.

Getting ready

It is necessary that all render targets are created with multisampling enabled. This includes the render targets of the G-Buffer, the depth buffer, and also the light accumulation buffer of the light renderer. Our implementations of the GBuffer and LightRenderer classes already support multisampling provided we pass in the correct sample description to the GBuffer constructor, for example, new SampleDescription(4, 0).

Our existing ScreenAlignedQuadRenderer must be modified to use the multisampling...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image