Blender⇆Unityでよくあるトラブル対処例【面が欠ける、陰影がおかしい】

Blenderでモデリングしているときに、「スムーズシェードにすると陰影がおかしくなる」「Unityにインポートすると面の裏表が逆になる」などといったトラブルに会ったことはありませんか?
そうしたトラブルは「面の向き」を調整することで修正できることがあります。

Blenderなどでつくった3Dモデルは「それぞれの面や頂点がどの方向を向いているか」を示す情報を持っています。
面の向きは光の反射を計算して陰影を表現したり、またUnityなどで片面だけを描画する際の「どちらの面が表か」という判定にも使われます。

この設定がおかしくなっていると、陰影が正しく表示されなくなったり、面の表裏が逆になってしまったりといったことが起こります。
今回は、そうした面の向きに関するよくあるトラブルと、対処方法や確認方法を紹介します。

スムーズシェードの陰影がおかしい

「フラットシェード」では問題ないのに、「スムーズシェード」にすると不自然な陰が出るといった場合、一部の面だけが反転していることが原因の可能性があります。

Unityにインポートすると面が欠けたり内側が描画される

面の表裏が逆になっています。Unityでは多くの場合、裏面が描画されないため、面が欠けたような表示になることがあります。

面の向きの向きが正しいかどうかを判断するための表示方法をいくつか紹介します。

裏面を非表示

Blenderでは、初期状態で面の表裏がどちらも表示されています。これを片面だけ表示させるようにすると、面が裏返っていることに気づきやすくなります。

「ソリッド表示」モードの場合、3Dビュー右上の「シェーディング」メニューから「裏面を非表示」にすることで、表面のみの表示に切り替えることができます。

「マテリアルプレビュー」「レンダー」モードでは、マテリアルプロパティでそれぞれのマテリアルについて「設定>裏面を非表示」で切り替えることができます。

面の向きを色で表示する

「ビューポートオーバーレイ」メニューから「面の向き」にチェックを入れると、面の向きによって色がついて表示されます。
近くの面と異なる色で表示されている場合、面の向きがおかしくなっている可能性があります。

面の向きを線で表示する

編集モードでは、面の向きを「面に垂直な線」で表示することができます。
編集モードの「ビューポートオーバーレイ」メニューで「ノーマル」と書かれている箇所のボタンをオンオフすると、それぞれの面や頂点の向きを表示させることができます。

裏返っている面を修正するには、編集モードで対象の面を選択して「メッシュ>ノーマル>反転」を実行します。
また「面の向きを外側(内側)に揃える」で選択した面の向きをまとめて揃えることもできます。

今回はBlenderでよくあるトラブルの一例と確認・対処方法を紹介しました。
モデリング中に何かおかしいな?と感じたら確認してみてください。

記事をシェアしてワールド制作を盛り上げよう!