CG関連

【GLSL(シェーダー)】でよく使う関数とユーザー関数のまとめ【計算編】※随時更新

プログラミングでかっこいい映像をつくりたいと覚え始めた『GLSL(シェーダー)』。

『GLSL(シェーダー)』にはたくさんの組み込み関数と、

よく見るユーザー関数があるなと思いましたので、

それらをまるっとまとめていこうと思います。

アオキ
『HLSL(Unityで使われているシェーダー)』も徐々に織り交ぜてまとめていきます。
Sponsored link

GLSLとHLSLの変数

GLSL HLSL 説明
vec4, vec3, vec2 float4, float3, float2 ベクトル
mat3, mat4, mat3x4 float3x3, float4x4, float3x4 マトリクス(行列)

GLSL(シェーダー)でよく使う関数 三角関数

三角関数の関連記事

ラジアンの関連記事

GLSL(シェーダー)でよく使う関数 累乗(るいじょう)

  • 累乗(るいじょう)・・同じ数を順に掛け合わせる

指数(pow)は、小さい数をかけるとより小さくなり、1.0だとなんどかけても1.0になるので、
弱い光を更に弱く、強い光はそのまま残す、といった場合に使われるようです。

反射光によるライティング | wgld.org

参考記事


Sponsored link

GLSL(シェーダー)でよく使う関数 数値をまるめる関数

アオキ
fractは『HLSL』だとfrac になります。
アオキ
modは『HLSL』だとfmod になります。

GLSL(シェーダー)でよく使う関数 符号、値を制限したり混ぜたり

アオキ
clampとmixはよく見ますな。
アオキ
mixは『HLSL』だとlerp になります。

アオキ
『HLSL』にはclampに似た saturate(x) という関数もあります(0,1でclampする)。

Sponsored link

GLSL(シェーダー)でよく使う関数 ステップ・スムース

GLSL(シェーダー)でよく使う関数 幾何的な関数

2つのベクトルから1つの値(スカラー)を計算。

3Dでライトを反射させたりする時につかう。

法線ベクトルは内積で計算できます。

参考記事

カメラのポジションなどで使う。

上向きベクトルと前向きベクトルを組み合わせると

なぜか横向きベクトルが計算できるという魔法の関数。

参考記事

Sponsored link

GLSL(シェーダー)でよく見るユーザー関数

ノイズ系 random, noize, fbm ユーザー関数

  • ランダム
  • ノイズ(パーリンノイズ)
  • FBM(Fractal Browniam Motion)非整数ブラウン運動

参考記事

TheBookOfShaders

ランダム関数は他の作り方もあるようです。

ランダムな値を返す関数 on GLSL

X軸回転(3D) ユーザー関数

Y軸回転(3D) ユーザー関数

スムース(距離関数をスムーズに合成) レイマーチングで使用

関連記事

参考記事

GLSLの関数

GLSLについてのメモ

『GLSL(シェーディング)』関係ではこんな記事も読まれています。

1. 【GLSL】プログラムでかっこいい映像をつくりたい! 〜『TouchDesigner』を見据えて

2. 【WebGL】入門 わかりやすく【図解】してみた

3. 【OpenGL】と【DirectX】のバージョンをまとめてみた【シェーダーメイン】【初心者向け】

4. 【GLSL(シェーディング)】でよく使う関数とユーザー関数のまとめ※随時更新

5. 【GLSL】プログラムでかっこいい映像をつくるには『レイマーチング』なるものを覚えればいいらしい

6. 【GLSL】『レイマーチング』入門その1 距離関数とレイとカメラの設定

7. 【GLSL】『レイマーチング』入門(2) 立体的に見せる方法〜光の反射は『内積』で〜

8. 【GLSL】『レイマーチング』入門(3) 距離関数を使ってみる・回転・合成・量産

9. 【TouchDesigner】で『GLSL』を使う方法まとめ【画像あり】

10. 【TouchDesigner】『GLSL MAT』の使い方 3次元でぐりぐり動かしてみる

11. 【GLSL】波のつくり方簡易まとめ。波もプログラムでつくれます【コピペスタイル】

アオキ
ツイッターでも記事ネタ含めちょろちょろ書いていくので、よろしければぜひフォローお願いしますm(_ _ )m

アオキのツイッターアカウント


関連記事一覧 (一部広告あり)

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

CAPTCHA


最近の記事

  1. CG関連

    【3Dプログラム】初心者にオススメな方法はこれ(9)【P5.js】
  2. 音楽

    コードの転回形の練習方法をまとめてみた【大人のピアノ】
  3. バックエンド

    【Python】手軽に試す方法2つとwebフレームワークについて【初心者向け】
  4. 学び・教育

    『プログラミング教育』より大事な事を考えてみる~AI時代を見据えて~
  5. CG関連

    【WebGL】入門 わかりやすく【図解】してみた
PAGE TOP