这multiply point function 简单地用向量3或4乘以4 * 4矩阵。
我正在尝试使用数学来复制此函数,因为我正在使用着色器。
数学本身并不引人注目,只是每一列的每个列的点积来得到最终的变换。
我的问题是,统一将我的变换矩阵返回为2 * 4,
我的变换向量是Vector4(向量3世界位置,在第四个组件中加1)
我的结论是,这个Unity函数必须在标准矩阵乘法之前做一些其他方法,欢迎对此有任何想法。
答案 0 :(得分:2)
此乘法点函数通过Vector3或Vector4简单地乘以4 * 4矩阵。
实际上错了,它只乘以Vector3 - 检查doco
问题:要有所帮助,Unity烦恼地"演员"在Vector2,Vector3,Vector4之间(以不同的方式,有时做,有时候没有意义)。
如果你给它一个Vector4作为参数,你实际上并没有得到你的想法 - 它的' "铸造"它是一个Vector3 ,试图提供帮助。
我希望,这就是问题所在!
只是为了在这里搜索任何新的密友,在a=b.MultiplyPoint(c)
我们有b(那个' sb,而不是a或c)是四个(即"运动") c是三(位置),结果a是三(位置)。