hi all,
i have been trying to understand how to build the TBN matrix for normal mapping to change the space from tangent space to local/world space using TBN matrix,
i have been to countless opengl sites but all i can see is the follow a standard formula described in similar fashion as to this link
http://www.terathon.com/code/tangent.html
Archived version: http://web.archive.org/web/20160304044004/http://www.terathon.com/code/tangent.html
which is the same formula pointed to by this book: Mathematics for 3D Game Programming and Computer Graphics
which is more or less the same formula as described in learnopengl.com tutorial for normal mapping: https://learnopengl.com/#!Advanced-Lighting/Normal-Mapping
The formula in question is: Q − P0 = (u − u0)T + (v − v0)B,
or on some other site expressed as:
or
What i want to understand is HOW is that formula formulated and the reason/explanation behind it,
i want to understand why the formula looks that way.
All i see from these sites or even in youtube tutorials starts from that formula and derived the TBN Matrix from the above formula.
I want to understand why the derivation of TBN matrix started from that formula and why. What is that formula and how was it formed.
Is there anything math/calculus/linear algebra related things i need to understand on why that formula existed.
(I'm sorry for asking questions like this, unlike other people i'd like to know the reason behind things and not just take whatever i read and follow with it.
i want to learn )
Please do enlighten my innocent mind,
Thank you in advance!