🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

解決済

1回答

5516閲覧

プロジェクトをURPに変換したら、Default-Materialの変換に対応できない

退会済みユーザー

退会済みユーザー

総合スコア0

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

0グッド

0クリップ

投稿2021/02/15 16:22

編集2021/02/15 16:25

前提・実現したいこと

こちらのサイトを参考に、既存の従来のビルトインレンダーパイプラインのプロジェクトを、
URPのパッケージをインポートして、URPプロジェクトに変換したのですが、
変換前にシーンに作成しておいたUnityのオブジェクト(Planeオブジェクト)が、URPに対応できない状態です。
解決法のご教示をお願い致します。

試したこと

既存のプロジェクトをURPに変換した後、
参考にしているサイトの通り、下記2つのメニューを実行しました。
選択メニューの方は、オブジェクトを選択して実行しています。

Edit > Render Pipeline > Universal Render Pipeline > Upgrade Project Materials to UniversalRP Materials Edit > Render Pipeline > Universal Render Pipeline > Upgrade Selected Materials to UniversalRP Materials

すると、既存のプロジェクトに配置していたアセットのプレハブなどは、正常なシェーダーに変換されたのですが、
Planeオブジェクトは、変換されず、StandardシェーダーのDefault-Materialがアタッチされたままとなっていました。

下記シェーダーをアタッチすればよいみたいなのですが、

Packages/Universal RP/Shaders/Unlit.shader

Mesh RendererコンポーネントのMaterialsの検索ボックスでLitと検索しても、当該シェーダーが引っかかってくれませんでした。
ちなみにインスペクタにドラッグ&ドロップする手法も試しましたが、マテリアルは切り替わらなかったです。

イメージ説明

ただ、不思議なのは、URP変換後に作成したPlaneオブジェクトには、Litがアタッチされていて、検索ボックスにも引っ掛かるのですが、
イメージ説明

イメージ説明

ここで、あえて検索ボックスで、Default-Materialを検索してそれを選び、
イメージ説明

イメージ説明

このようにセットした後で、再び検索ボックスでLitと検索してみると、
今まで引っ掛かっていたLitが引っかからなくなってしまうことです。
Unityのバグっぽい挙動にも思えますが、対処法があればご教示お願いします。
イメージ説明

最終手段としては、Unityで作成したオブジェクトなので、作り直すという方法がありますが、
URP変換前のプロジェクトで、Unityで作成できるプリミティブなオブジェクトを多数使ってステージを作成していた場合は、
配置や大きさ等の変更もしなければならなくなり、手間となってしまうため、対処法があれば知りたいです。
また、可能であれば、複数のUnityオブジェクトを一括でLitのマテリアルに変換する方法もあればご教示お願いします。

###追記
Mesh RenderコンポーネントをRemoveコンポーネントして、Addコンポーネントで付け直して、
検索もしてみましたが、やはりLitは引っかかりませんでした。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

What's new in Unity 2019.2.0 Alpha 6 - Unity」によると、

Package Manager: - Added possibility to hide/show Packages in the Project Browser and Object Picker, depending on the package type set in its manifest:

  • If the package type is "tool" or "library", it will be hidden by default, otherwise it will be visible.
  • If the package manifest contains boolean attribute "hideInEditor", this value overrides the visibility set by package type.
  • Added button in Project Browser and Object Picker to toggle package visibility (include/exclude hidden packages).
  • Added package type property and hideInEditor advanced property in the Package manifest Inspector.

とのことで、パッケージに応じてピッカー上のオブジェクトを隠したりするようになったそうです。
「Select Material」のウィンドウの右上に目玉に斜線が入ったアイコンのトグルボタンがありますが、これを切り替えてみてはいかがでしょうか。

マテリアルの一括差し替えについてですが、下図のようにオブジェクトを複数選択した状態でインスペクターを操作することで、いくらか省力化できるかと思います。

図1

オブジェクトの型による検索も併用すると楽かもしれません。

図2

投稿2021/02/15 20:09

Bongo

総合スコア10811

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2021/02/16 12:43

ご回答ありがとうございます。 バグかもしれないと思い込んで諦めかけていたので、解決法があり、驚きました。 また、マテリアルの一括差し替えやオブジェクトの型検索もご教示いただき、ありがとうございます。 とても便利な方法ですね。 また、ProjectパネルでもType検索の方法が気になって調べてみたり、試してみたりしたのですが、 Projectパネルの場合はType検索がヒエラルキーと異なるみたいですね。 Projectパネルの方では、Search by Typeを指定するということがわかりました。 ヒエラルキーでは、「t:コンポーネント名」でアタッチしているオブジェクトが絞り込めましたが、 同様の検索をProjectパネルで試したところ、アタッチしているプレハブは表示されないことを確認しました。 解決しました、ご教示いただきありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問