3d graphics, unit vectors and orthogonal matrices

I try to raise my head around the tangent space, and I begin to ask questions that I cannot ask my colleagues because they begin to understand what I'm talking about. I am trying to do a normal mapping on opengl. My current plan is to compute a tangent-bitangen-normal matrix in a geometric shader.

  • When I have an orthogonal matrix (such as the TBN matrix) and I allow opengl to interpolate it between the vertices, are there three resulting vectors (T, B and N), and then another unit length? are they still at 90 degrees to each other?
  • When I multiply my sample of normal length (unit length) with my orthogonal matrix, is the result a guarantee equal to a unit of length? I think this is impossible, but cannot explain it.
  • I was thinking about using normal normal maps so that objects would not look as bad as they are now. This would mean that there are two normal cards. How to combine two samples?

To answer my question, a colleague began work on No. 2, and he came up with an elegant proof. It is not much to print here, but suffice it to say that it is true.

+1
source share
2 answers

Since the answers are still not exhaustive, I thought that I would go for this:

1) . v1, v2 v3, . , , -v3 , v1 v2. A=(v1|v2|v3) B=(v2|v1|-v3). , C=((v1+v2)/2|(v1+v2)/2|0) . , : (0 0 1)^T . , , , 0 °. , , , . , . , , . - - ! ( , ): (google!) ( , ), - TBN ( TBN).

2.) . , , . , , . , , , .

3.) , . Mipmapping , . , mipmapping, , . , ( !), . , , , normal-normalmaps . , , , , .

+1

1) . , - . 1 . (1,0,0) (-1,0,0), - - , , , .

, . , . , , , .

2) , , . . , , .

3) , LOD, . , ( ).

, , ( ), .

+1

All Articles