Rendering
フラグメントシェーダで接空間<->ワールド空間変換する方法です。
MaterialのInspectorでブレンドモード(加算とか乗算とか)を選べるようにしてみます。
shader_featureやmulti_compileでシェーダのバリアントを作る方法です。
RenderQueueやRenderTypeをシェーダの外側から、つまりスクリプトから変更する方法です。
UnityのシェーダでUsePassにより他のシェーダのパスを使う方法です。
シェーダでcgincファイルをインクルードして使う方法です。
シェーダでマクロを使う方法です。
シンプルなRadial Blurのポストエフェクトの実装方法を紹介します。
GrabPassを使った歪みを表現するシェーダの実装方法です。
GrabPassを使った屈折を表現するシェーダの実装方法です。
refract関数の使い方と屈折率についてです。
GrabPassの説明とシェーダの実装例です。
頂点シェーダによる変形により波打つ水面のような形を作ってみます。
レンダーターゲットに書き込むチャンネルを制御するカラーマスクの使い方を紹介します。 またマテリアルのインスペクタからカラーマスクを指定できるようにしてみます。
テクスチャ圧縮フォーマットを決めるときに地味に悩むので、 現時点での自分なりのテクスチャ圧縮の方針をメモしておきます。
ノイズテクスチャを使って細かい線を引いてみます。
シェーダでテクスチャを回転させてみます。
UnityEngine.SystemInfoでグラフィック周りの情報をいろいろと取得できます。 使いそうなもののみメモしておきます。
FPSとリフレッシュレートについて調べる機会があったので書いておきます。
UnityのMotion Vectorについて、内部的な実装はさておき挙動だけ理解する記事です。
Post Processing Stackについての簡単な説明と、モバイルデバイスで使う上での注意点をまとめました。 Post Processing StackについてはPreview版であり、なおかつあくまで現時点での情報となります。
UnityやPost Processingで実装されているアンチエイリアシングとそれに関連する技術について調べたのでまとめます。
この記事では疑似HDRレンダリングを実装します。 疑似HDRとは、浮動小数点バッファを使わずに実装するHDRレンダリングのことです。
特定のカメラの解像度だけを下げる方法です。
HDRレンダリングをするときにはレンダーターゲットに浮動小数点バッファを指定します。 ただ、モバイルで浮動小数点バッファってそもそも使えるの? という点がわからなかったので調べてみました。 (はっきりとした結論は出ていません。詳しい方ご指摘いた…
UnityでHDRレンダリングする際の設定項目と、その挙動を確認してみました。
Post Processing Stack v2を使ってポストエフェクトを掛けるまでの手順をわかりやすくまとめます。
以前Unityのビルトインのディザ抜き用テクスチャを取得しました。 light11.hatenadiary.com 今回はこれを使って実際にディザ抜きしてみます。
Unityのビルトインシェーダをみていると、どうやら内部的にディザ抜き用のテクスチャをもっていることがわかります。 これを使えたら便利そうなのでどんなテクスチャなのか見てみます。
VPOSを使ってスクリーンに対してテクスチャをマッピングする方法です。