LunaJohn

Forum Replies Created

Viewing 1 post (of 1 total)
  • Author
    Posts
  • in reply to: 作业3 bump mapping中TBN的t 公式怎么推导的 #9241 Score: 0
    LunaJohn
    Participant

    把切线从模型空间转换到世界空间是不能直接用model矩阵转换的,只要model矩阵是各个分量不等拉伸的矩阵,变换之后原来的法线和原来的面就不会垂直了,这个你可以在2维空间画一下x*1,y*2的变换,还是很明显的。
    要得到正确的变换,就是要保证前后顶点切线和法线点乘为零,即TA cross NA = 0,TB(变换后的切线)=M1*TA,M1就是变换矩阵。那么可以得到 (M1*TA)^ * G*NA = 0(前面取转置默认3*1转为1*3),G就是法线变换矩阵,那么可以得到TA^(MA^ * G)N=0,那么我们可以知道当G为MA的逆转置矩阵时等式成立。

    ps:因为有些库帮我们处理了一些细节,3*1 * 3*3的计算是可以被当作1*3 * 3*3的,所以把矩阵 * 向量(m * v) 转化成 向量 * 矩阵(v * m) 相当于对矩阵transpose(v^ * m^)。

Viewing 1 post (of 1 total)