GM:S ではカスタムシェーダを簡単に作るためのテンプレートが用意されています。
※ 当ブログでは GM:S 用のシェーダとして GLSL ES 以外を扱いません
GM:S のシェーダは頂点シェーダ(Vertex Shader)とフラグメントシェーダ(Fragment Shader also know as a Pixel Shader)で構成されています。
GM:S ではフラグメントシェーダ(あるいはピクセルシェーダ)を単純に Fragment(フラグメント) と呼んでいます。YoYoGames のドキュメントでシェーダに関する文章では頻出する Fragment というのは Fragment Shader/Pixel Shader のことだと覚えてください。
当ブログではこれ以降ピクセルシェーダという呼称は利用せず、フラグメントで統一します。
参考(YoYoGames):Shaders
頂点シェーダはフラグメントシェーダより必ず先に処理され、頂点属性(頂点に関するあらゆる情報)を attribute 変数で受け取り、varying 変数を使ってフラグメントへ値を渡すことができます。
フラグメントシェーダは頂点シェーダの後に実行され、頂点シェーダから varying 変数を用いて渡された情報などを元にして「色(ピクセル)」に関する処理を実行します。
GM:S では Vertex と Fragment、この二つを GM:S 付属のシェーダエディタ(Shader Editor)上で各シェーダを各シェーダ言語で記述し、リソースツリーへの追加を行います。
[divpage]