🎡GLSLの概要
3.7 Keywordsにはvec2とかvec3は予約語であると書いてある。
ということで命名にはかなり強い意味があるのでそれ全部おぼえとかないといけない。
4.1でそれぞれ型定義されてる
レジスタのように意味があるgl_FragColor gl_FragCoord
gl_FragColorという変数自体にもレジスタのように意味がある。
特殊変数であるgl_FragColorとgl_FragDataのデータに応じて描画をする。
特殊変数とか予約語の制約が強く、そこに値を入れて計算させる。最終的にGPUと直接話して魔法陣のようなものを作る世界観。
timerとかmouseはOpenGLでは定義がない。こちらはuniformという定義があって、おそらくハンドラ(バインダ?リンク?)みたいにGPU側に送れる変数のようなもののようだ。
デモタイム
これをこう、いろいろ値やら大きさやら変えてみたのがこれ。
P5.jsでも動かしてみた。みなさんも挑戦してみましょう。
Three.jsだとvUvになるから気をつけろ
https://editor.p5js.org/setapolo/sketches/aoTXOqPGe
お願い致します