2018-05-01から1ヶ月間の記事一覧

【Unity】視錐台カリングを無効化する

視錐台カリングを(強引に)無効化する方法です。

【Unity】AnimatorControllerのState切り替わり時にState名をログに出す

AnimatorControllerはStateの切り替わりは簡単にスクリプトから取れるけど、Stateの名前を取ったりするのが意外と面倒です。 このあたりのソースコードを毎回作ってると時間がかかるので、手軽にできるようなスクリプトを残しておきます。

タイルベースレンダリングの概要と、不透明なフラグメントの破棄は高負荷だという話

モバイルではclip()やdiscardを多用しないほうがいいという話を聞きます。 これに関連して、タイルベースレンダリングを概要からまとめてみました。

【Unity】【エディタ拡張】シーンビューにウィンドウを表示する

シーンビューにIMGUIのウィンドウを表示する方法です。

【Unity】【シェーダ】RenderTypeをスクリプトから変更する

RenderTypeをスクリプトから変更する方法です。 Standardシェーダのように不透明や半透明をエディタから切り替える機能をつけるときなどに便利です。

【Unity】【シェーダ】Custom Render Queueについて

マテリアルからQueueによる描画順をいじるCustom Render Queueの使い方です。

モバイルにおけるテクスチャ圧縮の概要とサイズが2のべき乗じゃないとダメな理由

意外とまとまっていないテクスチャ圧縮の概要です。 いろんな職種の人がちゃんと知ってるべきだけど意外と伝わらなかったりするのでまとめてみます。

【Unity】【シェーダ】clip()やdiscardを使うときにはRenderQueueをAlphaTestにする話

AlphaTestというRenderQueueについてちゃんと理解できていない感があったので調べました。

【Unity】【シェーダ】光芒(グレア)のポストエフェクトを実装する

光芒とかスターと呼ばれるポストエフェクトを実装してみます。

【Unity】【シェーダ】ガウス関数を使ってブラーを掛ける

ガウス関数を用いてぼかし効果を加える方法を紹介します。

ガウス関数の性質を5分で学ぶ

ガウス関数を使うにはその性質だけわかっていれば十分なことが多いです。 この記事では難しい話は置いておいて、知っておくべきガウス関数の性質だけをまとめました。

【Unity】シャドウマップを自前で作成する(ライトからの深度をRenderTextureに描画する)

シャドウマップを自前で作成してみます。 以前カメラからの深度情報を得る方法を書きました。 light11.hatenadiary.com しかしこの方法は指定したRenderTextureに書き込んだりできないので別の方法で実装します。

【Unity】【シェーダ】4種のアウトライン描画方法とその特徴

アウトラインの描画方法はいくつかのパターンがあります。 このブログでもいくつか紹介してきたので、この記事ではそれらの概要と特徴をまとめてみます。

【Unity】【シェーダ】より低負荷なエッジ抽出方法(4点サンプリング法)

以前ソーベルフィルタやプレヴィットフィルタによるエッジの抽出方法を紹介しました(関連の節からリンクしてあります)。 これらの方法はテクスチャサンプリング数が多い(8回)という欠点があります。 そこで、より低負荷なエッジ抽出方法を紹介します。

【Unity】【シェーダ】プレヴィットフィルタでエッジを抽出する

前回、ソーベルフィルタによるエッジ抽出方法を紹介しました。 light11.hatenadiary.com 今回はプレヴィットフィルタによるエッジ抽出方法を紹介します。

【Unity】【シェーダ】ソーベルフィルタでエッジを抽出する

テクスチャやレンダリング結果などからエッジを抽出するにはいくつかの方法があります。 ここではソーベルフィルタというフィルタをかけることで抽出する方法を紹介します。

【Unity】【シェーダ】なんとなく書きがちな#pragma target 3.0の意味

Unityでシェーダを書くとき、特定の機能を使う場合に次のような記述をすることがあるとおもいます。 #pragma target 3.0 これはShader Compilation Target Levelsというものです。 今回はこれについて調べてみます。

【Unity】ステンシルバッファをポストエフェクトで使う方法(と謎の挙動)

ポストエフェクトでステンシルバッファを使う方法です。 なんかいろいろと挙動(の原因)がわからないところがあるのでメモがてら。 結論だけ知りたい方は「結論」の節まで飛ばしてもらえればわかるようになってます。

【Unity】【シェーダ】オブジェクトの遮蔽されている部分をシルエット描画する(ステンシルバッファ)

あるオブジェクトの、ほかのオブジェクトと重なって隠れてしまっている部分を違う色で描画する方法です。 障害物に遮蔽されているときにシルエットを描画したい場合などに使えます。

【Unity】【シェーダ】カメラからの深度情報を用いてアウトラインを描画する

デプステクスチャを用いてアウトラインを描画する方法です。

【Unity】【シェーダ】カメラから見た深度を描画する

カメラから見た時の深度を描画する方法です。

【Unity】【シェーダ】ステンシルバッファでアウトラインを描画する

ステンシルバッファを使ってアウトラインを描画する方法を紹介します。

【Unity】【シェーダ】シャボン玉風シェーダ

下の記事からさらに派生してシャボン玉風シェーダを作ってみました。

【Unity】【シェーダ】構造色風シェーダを実装してみる

構造色レンダリングの記事を元に、構造色風のシェーダを作ってみました。

構造色レンダリングの要点をまとめてみる

構造色のレンダリング手法ってどんなものがあるのかと探していたところ、下記の論文を見つけました。 汎用的な構造色レンダリング手法の開発 とても勉強になりましたが、アカデミックな論文はなかなか理解に時間がかかってしまうので、要点をまとめてみます。…

【Unity】【シェーダ】Unityシェーダチートシート

自分用メモ。随時更新。