Shader

【Unity】【URP】Swap Bufferを使ってポストエフェクトをお手軽に実装する

UnityのURPでSwap Bufferをつかってポストエフェクトをお手軽にかける方法についてまとめます。 Swap Bufferとは? ScriptableRenderPassを実装する ScriptableRendererFeatureを実装する シェーダを実装する 結果 参考

【Unity】ビルド時に不要なシェーダバリアントを削除するIPreprocessShadersの使い方

Unityでビルド時に不要なシェーダバリアントを削除するIPreprocessShadersの使い方をまとめました。 ビルド時にシェーダバリアントを削除? IPreprocessShadersの使い方 処理されるタイミング & 注意点 参考

【Unity】URPでPBRライティングをする基本的なシェーダの書き方まとめ

UnityのUniversal Render Pipeline(URP)でPBRライティングをする基本的なシェーダを書く方法をまとめました。 はじめに 方針の整理 シェーダ 結果 関連 Unity2020.3.15f2 Universal RP 10.5.1

【Unity】【シェーダ】ゼロのゼロ乗は「1、あるいは未定義」だと言うことを実感した話

Unityのシェーダでゼロのゼロ乗は「1、あるいは未定義」だと言うことを実感した話をまとめました。 pow関数の不可解な挙動 ゼロのゼロ乗は1あるいは未定義である どうすればいいのか 参考

【Unity】シェーダでUNITY_VERSIONマクロを使ってUnityエディタのバージョンごとに処理を変える

UnityのシェーダでUNITY_VERSIONマクロを使ってUnityエディタのバージョンごとに処理を変える方法です。 はじめに シェーダ 結果 参考

【Unity】URPにおけるシェーダのLightModeの用途を整理する

UnityのUniversal Render PipelineにおけるシェーダのLightModeの用途を整理しました。 はじめに LightModeまとめ 関連 参考

【Unity】【URP】Custom Vertex Streams + GPUインスタンシングに対応したParticleSystem用シェーダを書く

UnityのURPでCustom Vertex Streams + GPUインスタンシングに対応したParticleSystem用シェーダを書く方法についてまとめました。 やりたいこと Custom Vertex Streams + GPUインスタンシング対応シェーダ 挙動を確認する フラグメントシェーダでインスタン…

【Unity】【URP】Radial Blur(放射状ブラー)のポストエフェクトを実装する(公式未対応バージョン)

UnityのURPでRadial Blur(放射状ブラー)のポストエフェクトを実装する方法についてまとめました。 はじめに シェーダを書く Volumeスクリプト作成する ScriptableRenderPassを作成する ScriptableRendererFeatureを作成する シーンに適用する 関連

【Unity】【URP】Flip-Book Blendingに対応したParticle用シェーダを書く

UnityのURPで、Flip-Book Blendingに対応したParticle用シェーダを書く方法についてまとめました。

【Unity】【HDRP】Radial Blur(放射状ブラー)のポストエフェクトを実装する

UnityのHDRPでRadial Blur(放射状ブラー)のポストエフェクトを実装する方法についてまとめました。 はじめに シェーダを作成する Volumeスクリプトを作成する シーンに適用する 関連

【Unity】HDRPでカスタムポストエフェクトを実装する

UnityのHDRPでカスタムポストエフェクトを実装する方法についてまとめました。 はじめに シェーダを作成する スクリプトを作成する シーンに適用する 参考

【Unity】shader_feature_localやmulti_compile_localを正しく使おうというお話

Unityのshader_feature_localやmulti_compile_localを正しく使おうというお話です。 グローバルキーワード・ローカルキーワード 注意点 各シェーダステージ用suffixにも対応 Unity2021.2からはシェーダキーワード上限数の制限が大幅に緩和 参考

【Unity】【URP】Cutoffシェーダのアウトラインと選択領域をSceneビューで正常に表示する

UnityのUniversal Render Pipeline(URP)でCutoffシェーダのアウトラインと選択領域をSceneビューで正常に表示する方法についてまとめました。 やりたいこと シーンビュー未対応シェーダを書く シーンビューに対応する 結果

【Unity】【URP】Texture2DArrayをシェーダでサンプリングする

UnityのURPで、Texture2DArrayをサンプリングするシェーダを作る方法についてまとめました。 はじめに Texture2DArrayを作る サンプリングするシェーダを書く 結果 関連 参考

【Unity】【URP】Texture3Dをシェーダでサンプリングする

UnityのURPで、Texture3Dをサンプリングするシェーダを作る方法についてまとめました。 はじめに Texture3Dを作る サンプリングするシェーダを書く 結果 関連 参考

【Unity】Uiversal Render Pipelineでカスタムポストエフェクトを実装する(公式未対応バージョン)

UnityのUniversal Render Pipeline(URP)でカスタムポストエフェクトを実装する方法についてまとめました。 なおいずれはカスタムポストエフェクトについて公式なサポートが入る予定ですが、この記事は公式が未対応の現状における実装方法となります。 はじめ…

【Unity】URP用のシェーダの書き方が旧パイプラインと微妙に違ってややこしいのでまとめた

URP用のシェーダの書き方が旧レンダリングパイプラインと微妙に違ってややこしいのでまとめました。 はじめに シェーダ 関連 参考

【Unity】Universal Render Pipelineで独自のレンダリングパスを追加する

Universal Render Pipelineで独自のレンダリングパスを追加する方法についてまとめました。 はじめに パスを定義する パスに対応するシェーダを書く ScriptableRendererFeatureを作る Forward Renderer Dataに設定する レンダリングする 関連

【Unity】SRP Batcherまとめ - Dynamic BachingやGPUインスタンシングとの違い~シェーダの書き方まで

UnityのSRP Batcherについてまとめました。 SRP Batcherとは? Dynamic Baching・GPUインスタンシングとの違い Dynamic Batching GPUインスタンシング SRP Batcherの使い方 シェーダの書き方 関連 参考

【Unity】【シェーダ】プロシージャルな髪の異方性ハイライト(天使の輪)表現を作る方法

Unityのシェーダでプロシージャルに髪のハイライトを作る方法です。 やりたいこと binormalを使ってハイライトを作る jitterテクスチャを使う 結果 関連

【Unity】【シェーダ】Particle SystemのCustom Vertex StreamsとCustom Dataの使い方まとめ

Particle SystemのCustom Vertex StreamsとCustom Dataの使い方をまとめました。

【Unity】【シェーダ】Particle SystemのGPUインスタンシングに対応したシェーダを書く

Particle SystemのGPUインスタンシングに対応したシェーダの書き方をまとめました。

物理ベースレンダリング入門 その③ - PBRシェーダをUnityで実装する

物理ベースレンダリングに入門するための連載の第3回です。 最終回の今回はPBRのシェーダをUnityで実装します。

物理ベースレンダリング入門 その② - 鏡面反射BRDF・拡散反射BRDF

物理ベースレンダリングに入門するための連載の第2回です。 今回は主要な鏡面反射BRDFと拡散反射BRDFを紹介します。

物理ベースレンダリング入門 その① - 物理ベースレンダリングとは?

物理ベースレンダリングに入門するための連載の第1回です。 今回は物理ベースレンダリングの概念とその背後にある考え方についてまとめます。

【Unity】【Shader Graph】浮動小数点数の精度を設定できるPrecision Modeについて

UnityのShader Graphで浮動小数点数の精度を設定できるPrecision Modeについてまとめます。

シェーダでは浮動小数点のアンダーフローを意識しないと端末依存バグが起こるよって話

シェーダでは浮動小数点のアンダーフローをちゃんと意識しないとダメだよって話です。

【Unity】深度とビュー空間の法線を使って輪郭線を表示するポストエフェクトを実装する

Unityで深度とビュー空間の法線を使って輪郭線を表示するポストエフェクトを実装する方法をまとめました。

【Unity】【シェーダ】投影テクスチャシャドウを実装する

Unityのシェーダで投影テクスチャシャドウを実装する方法をまとめました。

【Unity】【シェーダ】色空間設定がガンマでもリニアでも同じ計算結果を示すシェーダを書く方法

Unityのシェーダで色空間設定がガンマでもリニアでも同じ計算結果を示すシェーダを書く方法についてまとめました。