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

Optimizing tessellation based on displacement decal (displacement adaptive tessellation)


By modifying our hull shader constant function, we can easily modify the tessellation factor based on whether or not a decal is located within the vicinity of a patch. This is also known as displacement adaptive tessellation.

Getting ready

Within the completed sample available for download in Implementing displacement decals, there is an additional function in Shaders\CommonDecal.hlsl that adds the provided tessellation factor to the appropriate edges and inside tessellation factors depending on whether the decal position and radius would impact the current patch.

void DecalTessellationFactor(float3 p[3], inout float3 edgeTessFactor, inout float insideTessFactor, float tessellation)

How to do it…

To apply displacement adaptive tessellation to the triangle tessellation hull shader perform the following steps:

  1. Update the triangle hull shader constant function HS_TrianglesConstant with the following highlighted...

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