Shader
Unity2017から追加されたCustom Render Textureを簡単に使ってみました。
カメラ空間からプロジェクション空間に座標変換する過程の理解が曖昧だったので、それに関する記事です。 プロジェクション座標変換とは? プロジェクション行列掛けるだけじゃダメ Unityで確認する 確認1 視錐台と同じ形のメッシュ 確認2 P行列で座標変換す…
シェーダで小数点を使う時には、float、half、fixedの3つの型が使えます。 この記事ではこれらの違いと使い分けについて簡単にまとめます。 必要な知識のみ。深入りはしません(できません)。
RenderTypeをスクリプトから変更する方法です。 Standardシェーダのように不透明や半透明をエディタから切り替える機能をつけるときなどに便利です。
マテリアルからQueueによる描画順をいじるCustom Render Queueの使い方です。
AlphaTestというRenderQueueについてちゃんと理解できていない感があったので調べました。
光芒とかスターと呼ばれるポストエフェクトを実装してみます。
ガウス関数を用いてぼかし効果を加える方法を紹介します。
アウトラインの描画方法はいくつかのパターンがあります。 このブログでもいくつか紹介してきたので、この記事ではそれらの概要と特徴をまとめてみます。
以前ソーベルフィルタやプレヴィットフィルタによるエッジの抽出方法を紹介しました(関連の節からリンクしてあります)。 これらの方法はテクスチャサンプリング数が多い(8回)という欠点があります。 そこで、より低負荷なエッジ抽出方法を紹介します。
前回、ソーベルフィルタによるエッジ抽出方法を紹介しました。 light11.hatenadiary.com 今回はプレヴィットフィルタによるエッジ抽出方法を紹介します。
テクスチャやレンダリング結果などからエッジを抽出するにはいくつかの方法があります。 ここではソーベルフィルタというフィルタをかけることで抽出する方法を紹介します。
Unityでシェーダを書くとき、特定の機能を使う場合に次のような記述をすることがあるとおもいます。 #pragma target 3.0 これはShader Compilation Target Levelsというものです。 今回はこれについて調べてみます。
ポストエフェクトでステンシルバッファを使う方法です。 なんかいろいろと挙動(の原因)がわからないところがあるのでメモがてら。 結論だけ知りたい方は「結論」の節まで飛ばしてもらえればわかるようになってます。
あるオブジェクトの、ほかのオブジェクトと重なって隠れてしまっている部分を違う色で描画する方法です。 障害物に遮蔽されているときにシルエットを描画したい場合などに使えます。
デプステクスチャを用いてアウトラインを描画する方法です。
カメラから見た時の深度を描画する方法です。
ステンシルバッファを使ってアウトラインを描画する方法を紹介します。
下の記事からさらに派生してシャボン玉風シェーダを作ってみました。
構造色レンダリングの記事を元に、構造色風のシェーダを作ってみました。
構造色のレンダリング手法ってどんなものがあるのかと探していたところ、下記の論文を見つけました。 汎用的な構造色レンダリング手法の開発 とても勉強になりましたが、アカデミックな論文はなかなか理解に時間がかかってしまうので、要点をまとめてみます。…
自分用メモ。随時更新。
Unityのシェーダでモデルのアウトラインを描画する方法を紹介します。 アウトラインの描画方法はいくつかありますが、本記事ではモデルを法線方向に拡大する手法についてまとめます。
Unityで不透明のオブジェクトを描画する際にはシェーダのQueueにGeometryを指定します。 このような不透明オブジェクトの描画は手前からされるものだと思ってましたが、そんなこともなさそうなのでメモです。
Unityにおけるステンシルバッファの使い方についてまとめてみます。
前回、CommandBufferの入門記事を書きました。 light11.hatenadiary.com CommandBufferを使うと独自のタイミングでポストエフェクトを掛けることもできますが、ちょっとハマりポイントがあるのでメモします。
フローマップとは? フローマップとは、水などの「流れ」の方向を定義するためのテクスチャです。
ポピュラーなポストエフェクトであるブルームを実装してみます。
UnityのBloomエフェクトの調整項目にSoft Kneeというものがあります。 docs.unity3d.com これに関連して、Knee Curve周りに関するメモです。
ノーマルマッピングに引き続き、視差マッピングもUnityで実装してみます。 ノーマルマッピングはこちら light11.hatenadiary.com