微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c – GLM:如何转置矢量?

也许我只是在文档中遗漏了一些东西,但似乎GLM不可能采用向量的转置.我也看不到mat3x1或mat1x3类型. glm :: transpose也不适用于矢量.我错过了什么或者这只是GLM缺乏的功能吗?

解决方法

GLM基于GLSL,根本不需要转置矢量.如果进行向量/矩阵乘法,它将以对矩阵大小有效的方式乘以向量(除非它必须改变乘法的顺序).因此,如果您有mat4并且执行mat4 * vec4,则您的vec4被视为列向量.如果你做vec4 * mat4,它被认为是行向量.如果你做mat2x4 * vec4,你会得到一个错误,而vec4 * mat2x4工作(作为行向量).

所以一般来说,没有理由需要“转置”一个向量.系统只是做任何工作.

原文地址:https://www.jb51.cc/c/118740.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐