回答:
違いは意味のみです。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。
sampler2DShadowwith にアクセスするとtexture、p座標が比較値になります。sampler2DShadowwithにアクセスtextureProjすることは、p座標が比較値であり、q座標が他の3つに分割されることを意味します(比較前なので、pは実際にはcomparison * q)。それらには本質的な意味はありません。使い方によって意味が変わります。