FBX-Icon

コード書いとる?

もういよいよFBXを避けて通れなくなってきたので、エイヤっと導入してみました。

FBX怖くない!

というわけで、導入記メモ。

まずは公式サイトからSDKをダウンロード。ネットで「FBX SDK」とかで検索して出てくるサイトはなぜだか古いので注意。

最新版をゲットするなら公式サイトから! ユーザー登録の必要はありません。たぶん。

FBX SDKの最新版はブログを書いてる時点で2017.1。自分の開発環境に合わせたSDKをダウンロードしましょう。特にVisualStudio版!

そしたら、開発環境にインクルードファイルとライブラリのパスを通したりします。

VisualStudio
・追加のインクルードディレクトリ
C:\Program Files\Autodesk\FBX\FBX SDK\<SDKのバージョン>\include

・追加のライブラリディレクトリ
C:\Program Files\Autodesk\FBX\FBX SDK\<SDKのバージョン>\lib\vs2015\$(PlatformTarget)\$(Configuration)

・リンカー→追加の依存ファイル
libfbxsdk.lib

・ビルド後のイベント
DLL形式を使うので、実行ファイルと同じ場所にDLLファイルをコピーする
copy "C:\Program Files\Autodesk\FBX\FBX SDK\<SDKのバージョン>\lib\vs2015\$(PlatformTarget)\$(Configuration)\libfbxsdk.dll" "$(OutDir)"
 

Xcode
・Header Search Pathsに追加
/Applications/Autodesk/FBX SDK/<SDKのバージョン>/include

・Other Linker Flagsに追加
Degubビルド
/Applications/Autodesk/FBX SDK/<SDKのバージョン>/lib/clang/debug/libfbxsdk.a
Releaseビルド
/Applications/Autodesk/FBX SDK/<SDKのバージョン>/lib/clang/release/libfbxsdk.a

以上の設定が終わったらサンプルコードを追加してビルドが通るか試してみましょう。ビルドでっきるっかなー。

#ifdef _MSC_VER
// FBX SDKをDLL形式で使うと定義
// TIPS:fbxsdk.hをインクルードする前に定義する
#define FBXSDK_SHARED
#endif

#include <fbxsdk.h>                // FBX SDKのヘッダーファイル

// TODO:以下のコードを適切な場所に追加する

// FBX SDKを生成・初期化
FbxManager* manager = FbxManager::Create();
assert(manager);

// 読み込み機能を生成
FbxImporter* importer = FbxImporter::Create(manager, "");
assert(importer);

if (!importer->Initialize("hoge.fbx"))
{
  // 読み込み失敗
}

// 読み込み用のシーンを生成
FbxScene* scene = FbxScene::Create(manager, "");
assert(scene);

// ファイルからシーンへ読み込む
importer->Import(scene);

// FbxImporterはもう使わないのでここで破棄
importer->Destroy();

// 
// シーンから必要な情報を取り出す処理を書く
//

// シーンを破棄
scene->Destroy();

// FBS SDKを破棄
manager->Destroy();

続きます。

ではまた次回!