回答:
違いは意味のみです。GLSLベクトルにはx/y/z/w
、r/g/b/a
またはを使用してアクセスできますs/t/p/q
。一般的な使用法は次のとおりです。
xyzw
以下のための空間座標rgba
以下のための色stpq
以下のためのテクスチャ座標var[0]/var[1]/var[2]/var[3]
代わりに使用できます。これらを式に混ぜることができます:foo.x = bar.q
、またはfoo.xy = bar.gb + baz.st;
。主な制限は、スウィズリングは同じグループの文字を使用してのみ実行できるということです。 foo.xya
で、無効な、それはミックスしているためxy
からxyzw
してa
からrgba
。
sampler2DShadow
with にアクセスするとtexture
、p座標が比較値になります。sampler2DShadow
withにアクセスtextureProj
することは、p座標が比較値であり、q座標が他の3つに分割されることを意味します(比較前なので、pは実際にはcomparison * q
)。それらには本質的な意味はありません。使い方によって意味が変わります。