float
やint
のようなプリミティブなデータ型ではなく、なぜベクトル値をユニオンで表現するのか、私はvec4
のglmのソースコードの実装を見ていましたか?glm :: vecはvecの値を共用体として表すのはなぜですか?
これは私がvec4
実装で見つかったコードです:
union { T x, r, s; };
union { T y, g, t; };
union { T z, b, p; };
union { T w, a, q; };
私達はちょうどT x
、T y
、T z
、T w
を書く場合の違いは何ですか?
ちょうどメモ:これは 'v.x == v.r == v.s'となるようにします – pingul