仕様によると:
メンバーがスカラーまたはベクトルの配列である場合、ベースアラインメント+ *および配列ストライドは、ルール(1)、(2)、および(3)に従って、単一の+*配列要素のベースアラインメントと一致するように設定されます。 +*をvec4のベース配列に切り上げます。配列の+*末尾にパディングがある場合があります。配列に続くメンバーのベースオフセットは、ベースアライメントの次の倍数に切り上げられます+*。
これは、(float)vec3のサイズ3の配列がある場合、次のようになることを意味しますか?
vec3、vec3、vec3、(vec4の倍数に到達するための12の空のバイト)、(最後の文のために16の空のバイト)
また
vec3、(4空のバイト)、vec3、(4空のバイト)vec3、(4空のバイト)、(最後の文のために16の空のバイト)