MFGドキュメント
Home
Getting Started
Reference
  • ja-JP
  • en-US
Home
Getting Started
Reference
  • ja-JP
  • en-US
  • MEP 16: swizzle演算子対応

MEP 16: swizzle演算子対応

  • Created: 2023-08-02 11:17:42

ここまでベクトル関連を整備したのだから、swizzle演算子もあって良いんじゃないか、と思うので対応したい。 ついでにタプルの要素を取り出す演算子として.0, .1なども対応したい。


tup.0, tup.1みたいな記法はSwiftにある。


Data Type (GLSL) - OpenGL Wiki

.rgba, .xyzw, .stpqのアクセスがあるらしい。 stpqはテクスチャの時だけか?あまり見かけないが。

Source register swizzling (HLSL PS reference) - Win32 apps - Microsoft Learn

これにはxyzwしか載ってないが、bgraもありそうなことはちらっと書いてある。 やはりこの2つでいいかな。


Metalは Metal Shading Language Specification.pdf の「2.2.1 Accessing Vector Components」に書いてあって、xyzwとrgbaの二つだと言っている。

なんかみんな順番はrgbaだと言っているなぁ。aが最後なのは妙な気もするが。 MFGとしてはbgraにしないと都合が悪いが、それならサポートしない方がむしろややこしくなくていいか?

最終更新: 2025/11/20 15:14
Contributors: Kazuma Arino