Skip to Main Content
XNA 3.0 Game Programming Recipes: A Problem-Solution Approach
book

XNA 3.0 Game Programming Recipes: A Problem-Solution Approach

by Riemer Grootjans
May 2009
Intermediate to advanced content levelIntermediate to advanced
671 pages
18h 34m
English
Apress
Content preview from XNA 3.0 Game Programming Recipes: A Problem-Solution Approach
CHAPTER 5 ■ GETTING THE MOST OUT OF VERTICES
493
In this special case of three perpendicular normalized vectors, you can transform a vector
by the inverse of a matrix by swapping their order in the multiply operation:
float3 vectorT = mul(tangentToWorld, vectorW);
Note This is because the inverse of a matrix constructed from three normalized and perpendicular vec-
tors equals the transpose of the matrix.
This is exactly what you want to do for your light direction: you want to transform it from
world space to tangent space:
Output.LightDirT = mul(tangentToWorld, xLightDirection);
Youcalculatethelightdirection,expressedintangentspace,andsendittoyourpixel ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

XNA 4.0 Game Development by Example: Beginner's Guide

XNA 4.0 Game Development by Example: Beginner's Guide

Kurt Jaegers
Learning LibGDX Game Development - Second Edition

Learning LibGDX Game Development - Second Edition

Suryakumar Balakrishnan Nair, Andreas Oehlke

Publisher Resources

ISBN: 9781430218555Purchase Link