読者です 読者をやめる 読者になる 読者になる
一人もくもく会 α verでサービス開始しました。

cocos2d-xのfbx-convをlinuxで実行

cocos2d-xはlinuxにもインストールできる。 しかし、一緒にインストールされる3Dモデルのコンバートツールであるfbx-convはWindows用とmac用のものしか付属していない。

wineで動くと良いかと思ったがうまく動かないのでlinuxでビルドを試してみた。OSはLinux Mint18

基本的には下記のとおりだが、順番や不足があるので補足してみる。

Fbx-conv tool source code - Extensions - Cocos2d-x Forums

FBX SDKをインストー

前提としてFBX SDKが必要なので、下記でダウンロード。

Autodesk - Autodesk FBX - FBX Software Development Kit

付属のテキストに書かれているように、インストールするパスを指定して実行するだけ。

./fbx20160_fbxsdk_linux /usr/local/lib/fbx-conv

fbx-convをビルド

下記をclone

github.com

export LD_LIBRARY_PATH=/usr/local/lib/fbx-conv/lib/gcc4/x64/release/libfbxsdk.so
export FBX_SDK_ROOT=/usr/local/lib/fbx-conv/lib/gcc4/x64/release

src/modeldata/Node.hに下記を追加

#include <algorithm>

src/modeldata/FileIO.cppに下記を追加

#include <string.h>

あと実際の実行時にもライブラリへのパスが通っていないといけないので、 /etc/ld.so.conf.d/fbx-conv.confを作成して

/usr/local/lib/fbx-conv/lib/gcc4/x64/release

を書いておく。 このconfファイルを作成したら

ldconfig

で設定を反映させる。

Makefileを作成するため、

./generate_makefile

するとbuild/gmake/fbx-conv.makeが作成されるので、この中の最初のCFLAGSを下記に書き換える。

CFLAGS    += $(CPPFLAGS) $(ARCH) -g -w -std=c++11

あとはbuild/gmakeフォルダでmake。するとcloneしたフォルダの直下にfbx-convが作成される。 ここに実行パスを通しておけば良い。