Unity5:MMD4MecanimでMMDモデルをiOSに書出すときの注意点

MMD4Mecanim

MMD4MecanimについてはUnityを使っている人にとってはもう常識でしょうか?Unityでキャラクターを動かそうと思いAssetsStoreを見てみても、FPS的なモデルがほとんど…キャラクター3Dモデルが豊富なMMDモデルをUnityで使えればと思う人が多く、様々な方がUnityでMMDモデルを使おうとしていました。

現在、Unity4から使えるようになったMecanimに対応したMMD4Mecanimが最も使われています。

Stereoarts Homepage

□ MMD4Mecanim (Beta)

概要

PMX(PMD) + VMD を FBX に変換するツール & Unity (Mecanim) で一通り動作させるためのスクリプトです。

 

パッケージを導入しMMDモデルを読み込み変換するだけで簡単にMMDモデルを表示したり踊らせたりする事ができます。ちょっと古い情報ですがこのような説明動画もあります。

そんなMMD4Mecanimが、2015/03/08版でUnity5に対応しました。

iOS(Metal)に書き出すとマテリアルが剥がれる問題

さっそく読み込んで使ってみたところ、問題なく使えています。ところがiOSに書き出しiPhone上で表示してみると問題が。

f:id:toshikaz55:20150309110335p:plain

Unityを使っている人にはお馴染みのマテリアルの剥がれた紫表示です。理由を調べてみると、どうやらiOSで新たに採用された高速描画エンジンMetalに対応していないからとのこと。そこでMetalではなく今までどおりOpenGL ESで描画するように設定します。

やり方は簡単で、まずメニューのFile→Build Settings...を選択し、ダイアログからiOSにBuildへSwitchします。次にPlayer SettingsでiOS用Buildの設定をします。iOS用の書き出しメニューのOther Settingsに”Graphics API”という描画エンジンの設定項目があります。

f:id:toshikaz55:20150309112241p:plain

デフォルトではAutomaticになっていますが、これはMetalを使うようになっています。ここをOpenGL ES 2.0にすればOKです。

f:id:toshikaz55:20150309112319p:plain

Graphics APIOpenGL ESにした状態でiPhoneに書き出すと、無事マテリアルも出力されます。

f:id:toshikaz55:20150309112435p:plain

よかったよかった。

そんな感じ