Home › Forums › GAMES在线课程(现代计算机图形学入门)讨论区 › 作业3,切线空间里的切线为什么这么算 This topic has 3 replies, 3 voices, and was last updated 1 year, 7 months ago by waqia. Viewing 2 reply threads Author Posts 2022年12月6日 at 下午9:30 #16017 Score: 0 chiuhouParticipant // Vector t = (x*y/sqrt(x*x+z*z),sqrt(x*x+z*z),z*y/sqrt(x*x+z*z)) 这里的t为什么是这么计算的呢,我查阅了一些资料发现切线空间里的切线和副切线的构建好像不是只知道一个顶点的法线方向就可以直接构建的,但我看作业里给了这个式子,我想知道这个式子是随便给的一个垂直法线的向量还是说是有说法的 而且我查阅了一些资料也没见过类似的式子 2023年3月7日 at 下午5:53 #16235 Score: 0 InterestingParticipant 你知道怎么算了吗 2023年3月7日 at 下午6:38 #16236 Score: 0 chiuhouParticipant 我已经知道了,你可以看我的博客文章https://juejin.cn/post/7189733963412275237?share_token=2ba884cf-55d7-4257-8d9c-43a1283c4938 下面有个专题具体推导了一下,你也可以看tinyrenderer这个开源项目的配套wiki里面更详尽 作业里的这个公式其实是助教随便给的,真正的切线空间的t和b向量其实是uv向量在三维空间里并且与法线正交化后的结果 2023年3月8日 at 上午8:52 #16237 Score: 0 waqiaParticipant Karma: 2 pts 作业就是瞎胡写的。不光TBN不对,bump 和displacement shader的写法都是错误的 https://learnopengl.com/Advanced-Lighting/Normal-Mapping Author Posts Viewing 2 reply threads You must be logged in to reply to this topic. Log In Username: Password: Keep me signed in Log In