🎨

Built-inシェーダーのURP変換が上手くいかないとき

2023/06/08に公開

はじめに

こんな人向け

  • Unity 2022.3 以降 (たぶん 2022.2 でもいける)
  • URP 初心者 (URP 14 だけど 12, 13 でもいけると思う)
  • Shader は苦手

問題

カスタムシェーダーで無ければ Render Pipeline Converter で上手く行く場合が多い

https://docs.unity3d.com/ja/Packages/com.unity.render-pipelines.universal@14.0/manual/features/rp-converter.html

  1. Window > Rendering > Render Pipeline Converter
  2. Build-in to URP を選択
  3. Material Upgrade にチェック
  4. Initialize Converters 押下

上手くいかなかったケース、カスタムシェーダーはどうするか?

手動に変換する

  1. 対象のマテリアルを選択
  2. Shader を Universal Render Pipeline 配下のどれかにする
    1. Lit にしておくのが無難
  3. 元の Shader のパラメータは極力引き継いで変換される
  4. それでも見た目に違和感があればゴリゴリ手作業
    • 透過PNGをテクスチャに使っているなら Alpaha Clipping にチェック
    • xxx Map のテクスチャに間違いや欠落があるなら入れ直す
    • Metelic Map のパラメータを調整

それでも上手くいかない

頑張って勉強する

https://blog.unity.com/ja/engine-platform/migrating-built-in-shaders-to-the-universal-render-pipeline

Discussion