テラByteの時代にキロByte

shader又はdemosceneに関係する事

2019-05-11から1日間の記事一覧

--shader(GLSL)の小技 05-- 距離関数でバウンディングボックスを使う

raymarchigの進行を高速にする為のバウンディングボックスというtrick。raymarchigはモデルが増えれば増える程、GPUの負荷が増大する。そこで、モデルをグループにしてバウンディングボックスに納めるtrickを作ってみた。モデルが少ない時は邪魔ですが多い時…

--shader(GLSL)の小技 04-- 距離関数に色情報を含めないで立ち回る方法。

raymarchingにおいて色を取得する部分というのは、その仕組み上、一番やっかいなところ。みんな手を変え品を変えてとやっている。map(距離関数を格納する部分)は一番アクセスするので、なるべくコンパクトにしたい。なので、ほぼ無駄な処理を繰り返す色の情…

--shader(GLSL)の小技 03-- カメラの使い方

今回はカメラの使い方についてやってみます。これについては、色々を書き方があって人それぞれですが、ここではmat3()を使うやり方を使います。ここをブラックボックスで使うのもアリだけど、理解して使った方が、スッキリしてshaderが書けるし、3D空間のコ…

--shader(GLSL)の小技 02-- オブジェクトの回転

基本shaderは、リアルタイムなので、動きが欲しくなります。なので、移動より回転を先にしたくなります。 なので、今回は回転について。 3Dの回転なので、mat3の行列が必要と思われがちですが、2Dで回転させた方が、おすすめです。 mat3だと、xyz各軸用の行…

--shader(GLSL)の小技 01-- なるべく短くraymarching

最近、jsdo.itが繋がりにくくなり、今まで書き溜めたモノが簡単に見れなくなりました。 ちょっと、不便なので、ここに移す事にしました。せっかくなので、少し解説を付けたりしてみようと思います。 それと、今まで集めたり、作ったりしてモノも纏めてみよう…