これはglmソースを理解するためのものです。私はglmがゼロを行っているかどうかを知りたかったので、クラスを初期化して試しました。はい、glm::vec3
とglm::mat4
は、コンストラクタ値を指定しなくても初期化されます。次に、それがどのように行われ、glm::mat4
テンプレートのソースを読んで理解したかったのです。 glm :: vec3とglm :: mat4はどのように初期化されていますか?
...
enum ctor{null};
// Constructors
GLM_FUNC_DECL tmat4x4();
GLM_FUNC_DECL tmat4x4(tmat4x4 const & m);
GLM_FUNC_DECL explicit tmat4x4(ctor Null);
...
私は(void)
コンストラクタ(ctorの)がある読み取ることができますが、定義せずに、ありませんので{...}
セクション:
は、このセクションがあります。そして、とenum ctor
の最初の要素から来るパラメータとしてを持つexplicit
ctorがあります。もちろんインデックス値0
を取得します。
- コンストラクタの定義はどこですか?どうすればそれらを見つけることができますか?
- そのNull ctorはどのようなものですか?
glm::mat4 myMatrix;
編集:私はちょうど書き込み時に単位行列にglm::mat4
を初期化されるどのよう
detail/type_mat4x4.hpp
#includes
実装の詳細にまでmat4x4.hpp
から1もたらしますtype_mat4x4.inl。そこにctorの動作が表示されます。
間違ったタグを使用する可能性があります。[tag:glm-math]? –
ありがとう、それを変更しました。 – VisorZ