Lately I’ve been working the core engine math library, and as a result had to delve into the wonderful world of “handedness”. This part of implementing a cohesive math library has always been a stumbling block for me in the past, so this time around things are much clearer. Here are some of my notes.
Left-Handed Coordinate System | Right-Handed Coordinate System |
---|---|
Matrix Layout: Row Vectors | Matrix Layout: Column Vectors |
Matrix Multiplication:
[pmath size=15]M = M_1M_2{cdots}M_n[/pmath]
|
Matrix Multiplication:
[pmath size=15]M = M_n{cdots}M_2M_1[/pmath]
|
Polygon Winding: Clockwise | Polygon Winding: Counter-Clockwise |