![見出し画像](https://assets.st-note.com/production/uploads/images/115494198/rectangle_large_type_2_0c4badf149e9816183d5e2f6b299fa39.png?width=1200)
🎡GLSLでプリミティブを描くための3ステップ
ただし、条件がある
このページの各プリミティブ、モディファイア、演算子の関数には、下のインデックスに「厳密」または「結合」の注記があります。「厳密」なSDFは、より多くのアルゴリズムやテクニックとの相性が良く、より高品質な結果を得ることができるため、一般的には「結合」SDFよりも望ましいとされています。
ここでのプリミティブはすべて原点を中心としています。任意に回転、平行移動、拡大縮小されたオブジェクトを得るためには、ポイントを変換する必要があります(下記参照)。以下のプリミティブの多くは dot2() や ndot() を使用していますが、ここではプリミティブの前に素早くリストアップしています。
ステップ1.Shadertoyのサンプルからプリミティブとる
![](https://assets.st-note.com/img/1662012323632-yf91Hfgeu8.png?width=1200)
ステップ2.glsl sandboxにコードをはっつけて、少し追記する
![](https://assets.st-note.com/img/1659227136051-zb21QWRRcQ.png?width=1200)
ステップ3.内容を見る
![](https://assets.st-note.com/img/1662068101831-w8gVD6zu6r.png)
伸長 - 正確
伸長は、新しいシェイプを構成するのに便利な方法です。基本的にはプリミティブを2つ(4つまたは8つ)に分割し、そのピースを移動してつなげます。
![](https://assets.st-note.com/img/1662074006401-pubUwu9pyC.png)
いいなと思ったら応援しよう!
![あたり帳簿](https://assets.st-note.com/production/uploads/images/146045306/profile_76a0adfc7bd4b4908ef76d29ad61ae98.png?width=600&crop=1:1,smart)