Shader
UnityのURPでUnityのフォグに対応したシェーダを書く方法についてまとめました。 はじめに シェーダ レンダリング結果 関連
UnityのURPでSwap Bufferをつかってポストエフェクトをお手軽にかける方法についてまとめます。 Swap Bufferとは? ScriptableRenderPassを実装する ScriptableRendererFeatureを実装する シェーダを実装する 結果 参考
Unityでビルド時に不要なシェーダバリアントを削除するIPreprocessShadersの使い方をまとめました。 ビルド時にシェーダバリアントを削除? IPreprocessShadersの使い方 処理されるタイミング & 注意点 参考
UnityのUniversal Render Pipeline(URP)でPBRライティングをする基本的なシェーダを書く方法をまとめました。 はじめに 方針の整理 シェーダ 結果 関連 Unity2020.3.15f2 Universal RP 10.5.1
Unityのシェーダでゼロのゼロ乗は「1、あるいは未定義」だと言うことを実感した話をまとめました。 pow関数の不可解な挙動 ゼロのゼロ乗は1あるいは未定義である どうすればいいのか 参考
UnityのシェーダでUNITY_VERSIONマクロを使ってUnityエディタのバージョンごとに処理を変える方法です。 はじめに シェーダ 結果 参考
UnityのUniversal Render PipelineにおけるシェーダのLightModeの用途を整理しました。 はじめに LightModeまとめ 関連 参考
UnityのURPでCustom Vertex Streams + GPUインスタンシングに対応したParticleSystem用シェーダを書く方法についてまとめました。 やりたいこと Custom Vertex Streams + GPUインスタンシング対応シェーダ 挙動を確認する フラグメントシェーダでインスタン…
UnityのURPでRadial Blur(放射状ブラー)のポストエフェクトを実装する方法についてまとめました。 はじめに シェーダを書く Volumeスクリプト作成する ScriptableRenderPassを作成する ScriptableRendererFeatureを作成する シーンに適用する 関連
UnityのURPで、Flip-Book Blendingに対応したParticle用シェーダを書く方法についてまとめました。
UnityのHDRPでRadial Blur(放射状ブラー)のポストエフェクトを実装する方法についてまとめました。 はじめに シェーダを作成する Volumeスクリプトを作成する シーンに適用する 関連
UnityのHDRPでカスタムポストエフェクトを実装する方法についてまとめました。 はじめに シェーダを作成する スクリプトを作成する シーンに適用する 参考
Unityのshader_feature_localやmulti_compile_localを正しく使おうというお話です。 グローバルキーワード・ローカルキーワード 注意点 各シェーダステージ用suffixにも対応 Unity2021.2からはシェーダキーワード上限数の制限が大幅に緩和 参考
UnityのUniversal Render Pipeline(URP)でCutoffシェーダのアウトラインと選択領域をSceneビューで正常に表示する方法についてまとめました。 やりたいこと シーンビュー未対応シェーダを書く シーンビューに対応する 結果
UnityのURPで、Texture2DArrayをサンプリングするシェーダを作る方法についてまとめました。 はじめに Texture2DArrayを作る サンプリングするシェーダを書く 結果 関連 参考
UnityのURPで、Texture3Dをサンプリングするシェーダを作る方法についてまとめました。 はじめに Texture3Dを作る サンプリングするシェーダを書く 結果 関連 参考
UnityのUniversal Render Pipeline(URP)でカスタムポストエフェクトを実装する方法についてまとめました。 なおいずれはカスタムポストエフェクトについて公式なサポートが入る予定ですが、この記事は公式が未対応の現状における実装方法となります。 はじめ…
URP用のシェーダの書き方が旧レンダリングパイプラインと微妙に違ってややこしいのでまとめました。 はじめに シェーダ 関連 参考
Universal Render Pipelineで独自のレンダリングパスを追加する方法についてまとめました。 はじめに パスを定義する パスに対応するシェーダを書く ScriptableRendererFeatureを作る Forward Renderer Dataに設定する レンダリングする 関連
UnityのSRP Batcherについてまとめました。 SRP Batcherとは? Dynamic Baching・GPUインスタンシングとの違い Dynamic Batching GPUインスタンシング SRP Batcherの使い方 シェーダの書き方 関連 参考
Unityのシェーダでプロシージャルに髪のハイライトを作る方法です。 やりたいこと binormalを使ってハイライトを作る jitterテクスチャを使う 結果 関連
Particle SystemのCustom Vertex StreamsとCustom Dataの使い方をまとめました。
Particle SystemのGPUインスタンシングに対応したシェーダの書き方をまとめました。
物理ベースレンダリングに入門するための連載の第3回です。 最終回の今回はPBRのシェーダをUnityで実装します。
物理ベースレンダリングに入門するための連載の第2回です。 今回は主要な鏡面反射BRDFと拡散反射BRDFを紹介します。
物理ベースレンダリングに入門するための連載の第1回です。 今回は物理ベースレンダリングの概念とその背後にある考え方についてまとめます。
UnityのShader Graphで浮動小数点数の精度を設定できるPrecision Modeについてまとめます。
シェーダでは浮動小数点のアンダーフローをちゃんと意識しないとダメだよって話です。
Unityで深度とビュー空間の法線を使って輪郭線を表示するポストエフェクトを実装する方法をまとめました。
Unityのシェーダで投影テクスチャシャドウを実装する方法をまとめました。