2018-05-01から1ヶ月間の記事一覧
視錐台カリングを(強引に)無効化する方法です。
AnimatorControllerはStateの切り替わりは簡単にスクリプトから取れるけど、Stateの名前を取ったりするのが意外と面倒です。 このあたりのソースコードを毎回作ってると時間がかかるので、手軽にできるようなスクリプトを残しておきます。
モバイルではclip()やdiscardを多用しないほうがいいという話を聞きます。 これに関連して、タイルベースレンダリングを概要からまとめてみました。
シーンビューにIMGUIのウィンドウを表示する方法です。
RenderTypeをスクリプトから変更する方法です。 Standardシェーダのように不透明や半透明をエディタから切り替える機能をつけるときなどに便利です。
マテリアルからQueueによる描画順をいじるCustom Render Queueの使い方です。
意外とまとまっていないテクスチャ圧縮の概要です。 いろんな職種の人がちゃんと知ってるべきだけど意外と伝わらなかったりするのでまとめてみます。
AlphaTestというRenderQueueについてちゃんと理解できていない感があったので調べました。
光芒とかスターと呼ばれるポストエフェクトを実装してみます。
ガウス関数を用いてぼかし効果を加える方法を紹介します。
ガウス関数を使うにはその性質だけわかっていれば十分なことが多いです。 この記事では難しい話は置いておいて、知っておくべきガウス関数の性質だけをまとめました。
シャドウマップを自前で作成してみます。 以前カメラからの深度情報を得る方法を書きました。 light11.hatenadiary.com しかしこの方法は指定したRenderTextureに書き込んだりできないので別の方法で実装します。
アウトラインの描画方法はいくつかのパターンがあります。 このブログでもいくつか紹介してきたので、この記事ではそれらの概要と特徴をまとめてみます。
以前ソーベルフィルタやプレヴィットフィルタによるエッジの抽出方法を紹介しました(関連の節からリンクしてあります)。 これらの方法はテクスチャサンプリング数が多い(8回)という欠点があります。 そこで、より低負荷なエッジ抽出方法を紹介します。
前回、ソーベルフィルタによるエッジ抽出方法を紹介しました。 light11.hatenadiary.com 今回はプレヴィットフィルタによるエッジ抽出方法を紹介します。
テクスチャやレンダリング結果などからエッジを抽出するにはいくつかの方法があります。 ここではソーベルフィルタというフィルタをかけることで抽出する方法を紹介します。
Unityでシェーダを書くとき、特定の機能を使う場合に次のような記述をすることがあるとおもいます。 #pragma target 3.0 これはShader Compilation Target Levelsというものです。 今回はこれについて調べてみます。
ポストエフェクトでステンシルバッファを使う方法です。 なんかいろいろと挙動(の原因)がわからないところがあるのでメモがてら。 結論だけ知りたい方は「結論」の節まで飛ばしてもらえればわかるようになってます。
あるオブジェクトの、ほかのオブジェクトと重なって隠れてしまっている部分を違う色で描画する方法です。 障害物に遮蔽されているときにシルエットを描画したい場合などに使えます。
デプステクスチャを用いてアウトラインを描画する方法です。
カメラから見た時の深度を描画する方法です。
ステンシルバッファを使ってアウトラインを描画する方法を紹介します。
下の記事からさらに派生してシャボン玉風シェーダを作ってみました。
構造色レンダリングの記事を元に、構造色風のシェーダを作ってみました。
構造色のレンダリング手法ってどんなものがあるのかと探していたところ、下記の論文を見つけました。 汎用的な構造色レンダリング手法の開発 とても勉強になりましたが、アカデミックな論文はなかなか理解に時間がかかってしまうので、要点をまとめてみます。…
自分用メモ。随時更新。