Unity 2018.1の新規トピック 2
FBX Exporterの提供
UnityのAssset Storeには、様々なアセットが出品されていますが、その中にはUnity Technologiesが出品しているアセットもあります。「FBX Exporter」というアセットもそれらのひとつです。
FBX Exporterを組み込む
FBX Exporter はAsset Storeから無料で手に入れることができます。Asset StoreビューからFBX Exporterを検索し、インポートボタンをクリックすると、インポートが始まります
-
〈Import Unity Package〉ウインドウが開いたら、右下の〈Import〉ボタンを押しましょう。現在開いているUnityプロジェクトにFBX Exporter が組み込まれます
-
FBX Exporer が正常に組み込まれると、Unityのメニューバーより〈GameObject〉メニュー内に〈Export Model...〉〈Convert To Linked Prefab Instance〉の2つの項目が追加されます。これらは、後ほど説明するFBXラウンドトリップで使用されるコマンドです
TIPS
MayaとUnityで作業ユニット単位を合わせる
さて、FBX ExporterやMayaからのコンストレインインポートを効率的に実行するために、事前にUnityとMayaとの間で作業するユニット単位を合わせておきましょう。Unityでは、1グリッドあたりの大きさは1mとなっています。一方、Mayaでは1グリッドあたりの大きさは、1m、1cm......、と初期設定で選ぶことができます。特にUnity上で物理演算をするときには、Mayaからインポートするオブジェクトも「1ユニット単位が1m」であることを保つ必要があります。以下のようにMayaおよびUnityを設定することで、上の関係を等しく保つことができます。
ユニット単位を合わせるための設定
Mayaでは〈Preferences → Settings → Working Units → Linear〉を〈meter〉で設定
-
MayaからFBXファイルをエクスポートする際に、〈Export Sellection → Advanced Options →Units〉より、〈Automatic〉をOFF。〈File units conversion to:〉を〈Centimeters〉で送ります
-
UnityでFBXファイルをインポートする際に、〈Inspector → Model〉タブより、〈Scale Factor〉を「1」 に、〈Use File Scale〉をONにして、〈Apply〉ボタンでインポート。なお、もちろんMayaでcm単位で作業している場合でも、作業者が「100ユニットで1m」と意識しているならば、問題はありません
FBXラウンドトリップ 1
FBX Exporterを活用したFBXラウンドトリップ
それでは、FBX Exporterを使いながら、実際に Unity 2018.1とMaya 2018との間でFBXラウンドトリップを使ってみましょう。
01 Unity側の準備
前述のようにFBX ExporterはAsset Storeからダウンロードします。UnityプロジェクトへのFBX Exporterのインストールが終了したら、メニューバーより〈Edit → Project Settings → Fbx Export〉を選択し、FBX Exporterの初期設定を行います
-
〈Inspector → Fbx Export Settings〉より〈Integration〉項目の〈3D Application〉リストボックスを見ると、システムにインストールされているDCCツールが表示されます。今回はMaya 2018を選択。続いて〈Install Unity Integration〉ボタンをクリックすると、オペレーションシステムのファイル選択ウインドウが開きますので、UnityとMayaを連動するプロジェクトフォルダを選びましょう
-
するとこのようなメッセージウインドウが出て、Maya 2018が起動します
インテグレーション用のヘルパースクリプトのセットアップが終わると、Maya 2018のFileメニュー内に〈Unity〉という項目が追加されます。〈Unity〉内には〈Export〉と〈Import〉の2つのコマンドがあります
02 Maya側の初期設定
続いてMaya 2018で〈Preferences →Settings〉より、作業ユニット単位を〈meter〉にしておきます。ほかにもSet Projectから、作業プロジェクトをUnityプロジェクトが使用するフォルダに合わせておくとよいでしょう。もしMaya 2018を閉じてしまって、Fileメニュー内から「Unity」がなくなってしまったときは、再びUnity上から〈Install Unity Integration〉ボタンをクリックし、同様の作業を再度実行する必要があります
インテグレーション用のヘルパースクリプトがプロジェクトにすでにインストールされている場合には、上書きするか、それとも既存のものを使用するか聞いてくるので、「Use Existing」を選びます
FBXラウンドトリップ 2
Unityシーン内のオブジェクトをMayaにエクスポート
Unityシーン内のオブジェクトは簡単にMayaにエクスポートできます。例としてUnityシーン内のTrackオブジェクトをMayaにエクスポートしてみましょう。
01 オブジェクトのエクスポート
Unityの〈Hierarchy〉ビューから、Trackオブジェクトを選択し、右クリックより〈Export Model〉を選択します。オペレーションシステムのファイル保存ウィンドウが現れますので、Track.fbxという名前で保存します
続いてMayaより、〈File → Unity → Import〉を選択し、直前に保存したTrack.fbxを読み込みます
02 カメラやルックの調整
Mayaのperseカメラの〈Near Clip Plane〉、および〈Far Clip Plane〉の設定値を、UnityにおけるMain Cameraのプロパティの設定値を参考に変更しましょう。元のモデルには当たり判定用のメッシュなども付いていますので、適宜非表示にして、シェーディング設定をハードウェアテクスチャリングにすると、ほぼUnity上と同じようなルックが得られます。また、Mayaのアウトライナーを見ると、新規にUnityFbxExportSetという名前の選択セットがつくられています。この選択セット内に名前のあるオブジェクトが、現在UnityのFBX Exporterプラグインによって管理されているオブジェクトです