前回、法線(Normals)に関わる失敗例として、Blender上で色がうまく表示されていない例を紹介しました。
(URL:http://blog.lab7.biz/archives/6479298.html

今回、私が体験した法線に関わる例をもうひとつご紹介します。
この時は、無駄にかなり悩んでしまいました。

まず、実際のおかしな画面をどうぞご覧下さい。
Normal_07_10
(また何をモデリングしているんだ と言う部分は置いておいて。)
これは、すでに Blender でモデリングしたものを、Unity にとりこんだものです。
キャラの腕の部分に注目してください。半分透明になっています。
Unity に取り込む前の Blender 上だと以下の様になっています。
Normal_07_03
Normal_07_02

少し色がおかしいです。しかし、Blender上ではこの時には気が付きませんでした。
リギングもしながらアニメーションを作っていたので、ちょっと変な感じは いまいちなメッシュに対して無理やりポージングしたせいかと思っていました。

その後、Unityまで3Dモデルを取り込んで、Unity上で明らかにメッシュがな表示されないと言う問題が発生したわけです。
けっこう悩んでいて、気が付きました。
法線を確認してみると、分かりますか?以下の画像。
対象部分から法線は出ていますが、周りより短いです。腕の反対側の法線が飛び出してきているわけです。
(法線の長さは変えられますので、こんな場合は、もう少し短くすると分かりやすいでしょう。)
Normal_07_01

そこで、前回解説したのと同じように法線を再計算した結果、以下の様に、正しく表示されるようになりました。テクスチャもきれに表示されております。
Normal_07_06
Normal_07_07

それをUnityに取り込むと。先頭のキャラのみ手が透けていないです。
Normal_07_09

このパターンだとBlenderではかろうじて表示されていたので、気が付かず作業を続けていたのですが、Unity 側に来て明らかな問題が発生した形です。

法線と言うキーワードで検索すると いくらでも設定の仕方の紹介がでてきますが、自分に発生した問題が法線に関連すると気が付くのに時間がかかる場合が多々あります。
今回の失敗例紹介がみなさんの参考になればさいわいです。
もちろん、いつものように、自分への備忘を兼ねて。


Sponsored Link