9

ドキュメントに何かが欠けているだけかもしれませんが、GLMではベクトルの転置を行うことはできないようです。mat3x1またはmat1x3タイプも表示されません。また、glm::transposeはベクトルに対しては機能しません。私は何かが足りないのですか、それともこれはGLMに欠けている機能だけですか?

4

2 に答える 2

9

GLMはGLSLに基づいており、ベクトルを転置する必要はありません。ベクトル/行列の乗算を行うと、行列のサイズに合わせて機能する方法でベクトルが乗算されます(乗算の順序を変更する必要がある場合を除く)。したがって、amat4とdoがある場合mat4*vec4vec4は列ベクトルと見なされます。実行するvec4*mat4と、行ベクトルと見なされます。を実行すると、動作mat2x4*vec4中にエラーが発生しますvec4*mat2x4(行ベクトルとして)。

したがって、一般に、ベクトルを「転置」する必要はありません。システムは、機能するものは何でも実行します。

于 2012-03-25T20:53:18.473 に答える
6

GLSL / GLMでベクトルを転置する方法(主に外積を計算するためのuv T )を探している人のためのリファレンスとして。これは:

glm::core::function::matrix::outerProduct(u, v)

APIリンクの形式が次のように変更されたため、NicolのGLMリンクは404になりました。

于 2013-10-17T03:17:56.417 に答える