T.TAO
ブログへ戻る
/2 min read/Technical Art

Unity Shader #9 レンズの雨滴

#Unity#Shader#TechnicalArt
Unity Shader #9 レンズの雨滴

Unity Shader #7 レンズの雨滴

このノートでは、URPの組み込みShader Graphを使って画面上に水滴の流れを表示する効果の実装について説明します。シェーダーでよく使われるテクニックも含みます。全体の考え方は、雨滴を描く、トレイルを描く、その他の部分をぼかすの3つに分けられます。

UVの理解

Shader GraphでUVノードを直接使ってUVを取得すると、プレビュー図が表示されます。SwizzleノードとMaskでx、y、z、wの4成分を確認します。0は黒、1は白です。斉次座標では点のw成分は1なので、UVは2Dでxは左から右へ0-1、yは下から上へ0-1です。

雨滴を描く

円を描き、複数の円を描き、正方形を長方形に変え、円形を時間とともに動かします。Smoothstepでエッジをシャープにし、Fractionで複製し、Timeでアニメーションします。

トレイルを描く

y方向に新しいuv範囲を描き、大きな円の下のトレイルを隠します。X方向の揺れはsin関数で実装し、パスを描画するには雨滴境界の上白下黒、パスが白で両側が黒、グラデーション図の3つが必要です。

このシリーズの記事

Unity Shader
  1. 01Unity Shader #0 数学の基礎
  2. 02Unity Shader #1 レンダーパイプライン
  3. 03Unity Shader #2 コードの基礎
  4. 04Unity Shader #2.1 基本コマンド
  5. 05Unity Shader #3 URP へのアップグレード
  6. 06Unity Shader #4 UV 上での図形描画
  7. 07Unity Shader #5 リムライト
  8. 08Unity Shader #6 スキャンとホログラム
  9. 09Unity Shader #7 アニメトゥーンシェーダー
  10. 10Unity Shader #8 ディゾルブ
  11. 11Unity Shader #9 レンズの雨滴
  12. 12Unity Shader #13 ポストプロセス
  13. 13URP #1 Universal Lit と URP ShaderLab