シェーダ何もわからん

だから書く
自分のチャンネル in glslfan.com

楽々開発環境

AtomならWebGLみたいなのが楽に動くんやない?と思ったらやっぱりあった。

Atomをインストール。
Atomを起動して以下のパッケージをインストールするだけ。
glsl-preview, language-glsl, 追加でautocomplete-glslもあると捗るかも。
あとはシェーダコードを書いて ctrl + shift + g でライブプレビューできる。つおい。

履歴

Practice1 : 時間とマウス座標に合わせて画面の色を変える
Practice2 : マウス座標に合わせてレイマーチングした円の大きさと視点深さ、円の大きさは時間に合わせて鼓動もする
Practice3 : mod演算による複製、擬似乱数による円の振動、深度で色をゆるやかに変えるレイマーチングスフィア
Practice4 : ランダムなマップを作成し、マウス座標でマス目ごとに乱数のパターンを変える
Practice5 : レイマーチングの結果からノーマルマップを計算、複数のオブジェクトの組み合わせ
Practice6 : mix(線形補間)によるモーフィング
Practice7 : シンプレックスノイズのための3角グリッドの生成のifなし実装
Practice8 : 解像度測定用に書いてみたcos周期でだんだん密になる模様

役に立った参考リンク

  1. シェーダライブコーディングのすすめ
  2. ビルトイン関数の使い方いろいろ!シェーダアートの表現力を高める小技集
  3. Media Lab 2018 第8回 : Shader (GLSL) によるGPUプログラミング
  4. GLSL - Declaring global variables outside of the main function scope
  5. GLSL レイマーチング入門 vol.1
  6. GLSL SandBoxで手軽にレイマーチングで遊ぼう
  7. The Book of Shaders これは神資料かも?
  8. Can I generate a random number inside a pixel shader?
  9. GLSLで行列で回転・縮小をする為のメモ
  10. Distance functions