Blenderで別々に作っていたモデルをCtrl+Jキーを押して1つに結合したらテクスチャが表示されなくなり黒くなった時の対処法です。
UVマップの名前を同じにしたら解決した
UVマップはモデルを選択して、緑色アイコンのデータをクリックした場所に「UVマップ」として確認する事が出来ます。この画像では「uv」と名前が付いています。
ここの名前が違うモデル同士を結合すると黒くなりました。なので同じUVでテクスチャを使用しているモデルを結合する場合はUVマップの名前を同じにする必要があります。
今回作成したモデルがおかしくなった理由
今回作成したモデルのUVマップの名前を見てみると、下の赤枠部分はUVMapと書かれています。
しかし、上の赤枠パーツの部分はUVマップとマップが日本語で書かれています。
Blenderの言語が英語表記、日本語表記でUVマップの名前が変わる
Blnederの編集→プリファレンス→インターフェース→翻訳→言語では、日本語や英語など様々な言語に切り替える事が出来ます。
英語でモデルを作ると「UVmap」
英語にしてモンキーを作成してみると「UVMap」と英語で書かれているUVが作成されます。
日本語でモデルを作ると「UVマップ」
日本語にしてモンキーを作成してみるとUVマップとマップ部分が日本語になりました。
今回はBlender3.6を使ったりBlender4.0を使ったりして作成していましたが、そのどこかで英語環境と日本語環境のUVマップがいつのまにか混在していたのでこのような事になっていました。
複数のモデルのUVマップの名前を一括変換するアドオン「Asset Creation Toolset」
Blender Addon: Asset Creation Toolset 2023.2
複数のモデルのUVマップを1つ1つ名前を変更する事はできますが、一度に名前を変更出来るアドオンがGumroadから無料ダウンロードできる「Asset Creation Toolset」です。
複数モデルを選択して、入力した名前に一度に簡単に変更できました。困っていたら是非使ってみてください。
今回はUVマップのテクスチャが外れてしまいましたが、このような事もある事から、Blenderで作業する場合や仕事でお客さんにデータ納品する場合や複数人で作業をする場合は英語表記、日本語表記を統一して作業した方が良い事が分かりました。