搜索你感兴趣的问题
如何将法向量转换到世界空间
天比不过海的蓝 2019-10-12
分享
推荐回答
情比纸薄 2022-01-19
顶点从模型空间转换到世界坐标空间只需要乘以世界转换矩阵即可,但是顶点的法向量却不能通过直接乘以这个矩阵将其变换到世界空间。原因是世界矩阵不仅包含旋转,还有可能包含着缩放操作,如果模型被不成比例的缩放,在不同方向上会有不同程度的拉伸或者压缩,顶点的坐标会因而伸缩,但是如果对法向量进行同样的伸缩,那么变化后的法向量将不再垂直于对应的表面。因此对应没有缩放或等比缩放的世界转换矩阵,可以直接采用相同的转换矩阵作为法向量的变换矩阵。那对于有不等比缩放或者通用的法向量转换矩阵,该如何求取呢?假定采用行向量,假定一个通过原点的面的法向量为n,转换矩阵为m,面上面某点为p,则有(p-0)nt==0即pnt=0,假设有个转换矩阵x,对法线转换后仍然垂直于经过m转换后的面,则有pm(nx)t=0展开pmxtnt=0;从这个等式看到如果mxt=I,(I为单位矩阵),则pmxtnt=pInt=pnt=0;而对mxt=I求解可得到x=(m-1)t.
本网站引用、摘录或转载上述内容仅供网站访问者交流或参考,文中观点或信息与爱问公司无关,与之相关的任何事务以及法律责任均与爱问公司无关。
相关推荐
有问题 @爱问
Powered by iask.com