Python版FBX SDKをWindowsにインストールする
Python版FBX SDKをWindowsマシンにインストールしました。
FBX SDK はC++よりもPythonの方が圧倒的に簡単だ!:準備編
こちらの記事を参考にインストールしたのですが、いくつかつまづいた点があったので、忘れない内にメモを残します。
環境はこんな感じです。
- Windows 10 64bit
- Python 2.7 (なぜ3系でないかは後述)
- FBX SDK 2019.5 (2019年9月26日時点で最新)
ちなみに、Macにもインストールしたので、別記事にまとめました。
Python版FBX SDKをMacにインストールする
Python版FBX SDKのインストーラーを入手する
こちらのサイトにアクセスします。
Autodesk FBX Software Developer Kit
少しスクロールすると、 FBX SDK 2019.5 Python Windows
というリンクがあるので、クリックすると、 fbx20195_fbxpythonsdk_win.exe
というインストーラーがダウンロードされます。
インストーラーを起動して、指示に従ってインストールします。
インストール先のフォルダはデフォルトのままの場合、以下になるようです。
C:\Program Files\Autodesk\FBX\FBX Python SDK\2019.5
これでインストール完了かと思いきや、まだ開発を始めることはできません。
Python 3.3版 ではなく 2.7版 を選ぶ
C:\Program Files\Autodesk\FBX\FBX Python SDK\2019.5\lib
を開くと、2.7版と3.3版があり、それぞれ32bit版と64bit版があることがわかります。
3.3版はPython 3.6等、3系のPython全て利用できるわけではなく、あくまで3.3でしか利用できないそうです。Python 3.3のインストーラーは公式ではもう配布されていませんので、ここでは2.7版を利用することにします。
Python 2.7をインストールする
もし、Python 2.7をまだ導入していない場合は、ここで導入しておきましょう。
手順は、以前こんな記事を書きましたので、こちらをご参照ください。
WindowsにPython2.7とPython3.7が共存できるようにインストールする
上記の記事にしたがってインストールした場合、Python 2.7は以下にインストールされます。
C:\Python27
Python 2.7にFBX SDKをインストールする
- OSが64bitの場合
C:\Program Files\Autodesk\FBX\FBX Python SDK\2019.5\lib\Python27_x64
- OSが32bitの場合
C:\Program Files\Autodesk\FBX\FBX Python SDK\2019.5\lib\Python27_x86
を開きます。
以下の3つのファイルがありますますので、 C:\Python27\Lib\site-packages
の直下にコピーします。
fbx.pyd
FbxCommon.py
fbxsip.pyd
これでインストール完了です。
pipenvを使っている場合
pipenvの場合、site-packagesフォルダの場所が違いますので、ご注意ください。
pipenv --venv
で表示されたフォルダーの配下の Lib\site-packages
にあります。
fbx
がインポートできるか試す
Pythonのコードから fbx
がインポートできるか試してみましょう。
test.py
というファイルを作って、以下のコードを記述します。
from fbx import *
このコードを Python 2.7 で実行してみます。
py
コマンドが使えるなら以下のように実行します。
py -2 test.py
この際、特にエラーが発生しなければ、インポートは成功です!
ModuleNotFoundError
が発生する場合
もし、以下のエラーが出た場合は、Python 3系で実行しているかもしれません。
ModuleNotFoundError: No module named 'fbx'
fbxという名前のモジュールが見つかりません
という意味のエラーメッセージです。
本記事の手順では、FBX SDKを3系にはインストールしていませんので、上記のエラーが発生します。
Python 2.7で実行できているか確認してみてください。
ImportError
が発生する場合
以下のエラーが発生した場合は、x64とx86を間違えてインストールしている可能性があります。
ImportError: DLL load failed: %1 は有効な Win32 アプリケーションではありません。
以下のファイルがインストールできているご確認ください。
- OSが64bitの場合
C:\Program Files\Autodesk\FBX\FBX Python SDK\2019.5\lib\Python27_x64
- OSが32bitの場合
C:\Program Files\Autodesk\FBX\FBX Python SDK\2019.5\lib\Python27_x86
さいごに
こちらの記事を参考にさせていただきました。わかりやすい記事をありがとうございます。