Blenderで作った建物のスケールをUnityに合わせる - Unityの使い方



Blender -> エクスポート -> Blenderで作った建物のスケールをUnityに合わせる

Blenderで作ったモデルのスケールをUnityに合わせる


Blenderで建物を簡単に作ってUnityに持っていきます。

Unityのサイズの1単位(デフォルトのCubeの辺のサイズ)は1メートルです。
参考:https://docs.unity3d.com/ja/current/Manual/BestPracticeMakingBelievableVisuals1.html

なので、Blenderなどの外部のソフトでも1単位=1メートルに合わせると作業を進めやすいです。

BlenderではプロパティのScene -> Units でメートル法を選択できます。

メートル法にすると、BlenderのデフォルトのCubeのScaleが1のとき一辺が2メートルと表示されました。


そこで、エクスポートするときに左下のパネルでScaleを0.5、Apply ScalをFBX Allにしてみます。


このCubeをUnityに持ってきました。

左がUnityの一辺が1のCube、右がBlenderから持ってきた一辺が1のCubeです。

座標を合わせるとピッタリと一致します。

FPSコントローラからの見た目を確認する

Blenderで作った建物をUnityに持ってきました。

学校の一部を作りました

スタンダードアセットのFPSコントローラで中を歩いてみます。

コライダーをつけないとプレイヤーが建物をすり抜けて落ちていきます。複数選択して一度に付けると早いです。


法律で決まっているサイズに合わせて作り、Unityの1単位を1メートルとしてスケールをあわせたのですが、FPSコントローラのカメラから見ると建物がかなり狭く見えます。

なので建物の全体のスケールを大きくしたりして調節する必要がありそうです。

2倍にしてもまだ少し狭い感じがしますが、サイズはとりあえずこれで良いとして、今度はFPSコントローラのカメラが低くて、小さい子供からの視点のようになっているのを直してみます。

FPSコントローラにはキャラクターコントローラコンポーネントが付いていて、高さは1.8になっています。さらにキャラクターの子オブジェクトとして、カメラが付いていて、Y座標は0.8になっています。






試しにキャラクターコントローラの高さを2倍にしてみても、中心からのカメラの高さは変わっていないようです。


このときの頭のカメラのワールドのY座標を見ると2.6~2.7くらいです。

床のY座標は0にしています。

なのでこのようになっているかもしれません。

他の値でもこうなりました。

なので、キャラクターコントローラの高さを建物に合わせて2倍にして、カメラの高さも2倍にしてみます。

身長は良くなりましたが、やはり建物がまだ小さいです。
建物や家具は実際のサイズに合わせてBlenderなどの外部ソフトで作るとして、Unityでは見た目を確認しながら柔軟に全体のスケールを調節するのがいいかもしれません。

画像検索などをして、実際の学校の写真と見比べて調節することにします。


他にも、カメラのField of Viewでカメラの画角を変えると見た目がかなり変わります。

トップページへ


tags: FPSController, FPSコントローラ, FPSゲーム, カメラ, スタンダードアセット, 見た目, 部屋, 建物, スケール, 学校, 廊下, キャラクターコントローラ