Help us understand the problem. What is going on with this article?

MMD4MecanimのUnity on OSXでのエラー解決

More than 1 year has passed since last update.

MMD4Mecanimを使って、Unityにミライアカリの.pmxファイルをインポートして3Dモデル表示した際につまづいたのでメモ。

この記事の要約

Unity on MacでMMD4Mecanimを使って.pmxファイルを.fbxファイルに変換する際にxmlファイルしか生成されない問題が起こった。pmx2fbx_275がversion 8.0.0以上のlibiconv.2.dylibを参照するようにパスを指定すると解決する。

環境

Mac OS X High Sierra 10.13.3
Unity 2018.1.0b8
MMD4Mecanim Beta
ミライアカリのモデルはニコニ立体で配布されています→
http://3d.nicovideo.jp/works/td31639

UnityにMMD4Mecanim、MMDモデルをインポート

@ngron さんのQiita記事などを参考にしてください

問題

「上の記事を参考にMiraiAkari_v1.0.MMD4MecanimのInspectorからProcessをクリックするも、fbxファイルが生成されず、xmlファイルしか生成されない」

スクリーンショット 2018-03-21 17.03.46.png

秋田大学プログラミングサークルTNPのガナリヤさんが「MMD4MecanimのMacでのエラーについて」というタイトルで、同じ問題についての記事を書いてくださっていますが、自分の環境ではこれだけでは解決しませんでした。

解決の流れ

①UnityのEditorログを見る

公式によるとmacでは
~/Library/Logs/Unity/Editor.log
にあるそうです。
開いて見ると、ガナリヤさんの記事にある通り、確かに

dyld: Library not loaded: /opt/local/lib/libiconv.2.dylib
  Referenced from: /Users/Shared/Unity/MiraiAkariTest/Assets/MMD4Mecanim/Editor/PMX2FBX/pmx2fbx_275
  Reason: Incompatible library version: pmx2fbx_275 requires version 8.0.0 or later, but libiconv.2.dylib provides version 7.0.0

との表記が。

pmx2fbx_275(自分の環境では/Users/Shared/Unity/MiraiAkariTest/Assets/MMD4Mecanim/Editor/PMX2FBX/pmx2fbx_275にありました)がversion 8.0.0ではなくversion 7.0.0のlibiconv.2.dylibを参照してしまっているため問題が起こっています。

②iconvをアップデートする

ガナリヤさんの記事、@lapun さんの記事を参考に

brew update
brew install libiconv

でlibiconvをアップデートして見るも、問題は解決せず。

③pmx2fbx_275の参照ライブラリを変更する

ターミナルで

$otool -L {pmx2fbx_275へのパス}

と叩くと

/opt/local/lib/libiconv.2.dylib (compatibility version 8.0.0, current version 8.1.0)

とあります。しかし、自分の環境では/opt/local/libにlibiconv.2.dylibがありませんでした。/usr/local/opt以下を見るとlibiconvディレクトリがあり、

$ otool -L /usr/local/opt/libiconv/lib/libiconv.2.dylib

と叩くと

/usr/local/opt/libiconv/lib/libiconv.2.dylib:
    /usr/local/opt/libiconv/lib/libiconv.2.dylib (compatibility version 9.0.0, current version 9.0.0)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1252.0.0)

と返ってきたので、こちらを参照するように変更しました。

$ install_name_tool -change /opt/local/lib/libiconv.2.dylib /usr/local/opt/libiconv/lib/libiconv.2.dylib {pmx2fbx_275へのパス}

改めて

$otool -L {pmx2fbx_275へのパス}

と叩くと

/usr/local/opt/libiconv/lib/libiconv.2.dylib (compatibility version 8.0.0, current version 8.1.0)

とあり、参照するパスが確かに変わっています。

結果

以上の修正をした上でUnityエディタに戻り、processをクリックすると、ミライアカリの.fbxが生成され、Sceneに配置できました。
スクリーンショット 2018-03-21 17.37.39.png

ライセンス

(c)Mirai Akari Project

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした