その1 インストールとプロジェクトの設定
手始めのこの章ではFBX SDKのインストールとプロジェクトの設定について説明します。
@ SDKのダウンロードとインストール
FBX SDKはAutodeskのサイトからダウンロードできます。ただし、日本語のサイトはバージョンが古くてバグ含みなのでアメリカのサイトからダウンロードしましょう(Autodesk FBX SDK)。開いたサイトの右側にある「Download the FBX SDK」をクリックすると名前の登録画面に飛びます。アスタリスクが付いている所を埋めてSubmitすればダウンロードできるようになります。2009年8月の時点では「FBX
SDK 2009.1」が最新のようです。FBX SDKは各種プラットフォームに対応していますが、ここではWindows版をダウンロードしてください。
ダウンロードしたファイルを実行するとインストーラが立ち上がります。好きな場所にインストールできますが「日本語パスがあるフォルダ」にはインストールしないで下さい。誤動作の元になります。混乱を避けるならばデフォルトのインストール先(C:\Program
files\Autodesk\FBX\FbxSdk\2009..1)がお勧めです。
インストールが終わると、次のようなフォルダ構成が出現します:
各フォルダの意味は次の通りです:
bin : サンプルでコンパイル(ビルド)した実行ファイルが格納されます
doc : ドキュメントがあります
examples : SDKを使ったサンプルが幾つか入っています
include : ヘッダーファイルがあります
lib : ライブラリファイルがあります
obj : サンプルをコンパイルした時の一時ファイル(objファイル)が入ります
プログラムで使用するのはincludeフォルダとlibフォルダ内のファイルです。ちなみにbinフォルダとobjフォルダはサンプルをコンパイルすると出現します。
A プロジェクトの設定は慎重に・・・
インストールしたら、続いて新しいプロジェクトを立ち上げます。今回はVisual Studio 2005でプロジェクトを開始してみます。前回のバージョン(2006.1)に比べ新しいバージョンはプロジェクトの設定がかなり改善されました。以下に設定を列挙します。
新規プロジェクトはWin32アプリケーションでもコンソールでも構いません。名前は適当で結構です。面倒を避けるために空のプロジェクトを作りましょう。ソルーションが出来上がったら、プロジェクトのプロパティを開きます。
デバッグモードでのプロジェクトの設定を一覧にしました。もれなく設定して下さい:
カテゴリ 項目 設定 備考 C/C++ 全般 追加のインクルードディレクトリ ...FBXSdk\2009.1\include
...FbxSdk\2009.1\include\kbaselib自身のインストールパスを指定して下さい プリプロセッサ プリプロセッサの定義 【Win32アプリの場合】
WIN32;_DEBUG;_WINDOWS;
K_PLUGIN;K_FBXSDK;K_NODLL;
_CRT_SECURE_NO_DEPRECATE;KARCH_ENV_WIN32
_DEBUGはりリースモードでは外す事 【コンソールの場合】
WIN32;_DEBUG;_CONSOLE;
K_PLUGIN;K_FBXSDK;K_NODLL;
_CRT_SECURE_NO_DEPRECATE;KARCH_ENV_WIN32
コード生成 ランタイムライブラリ マルチスレッドデバッグDLL(/MDd) これは実は各ランタイムモードに対応したライブラリが用意されています。ここではVS2005のデフォルトであるマルチスレッドデバッグDLLの場合の設定です。 リンカ 全般 追加のライブラリディレクトリ ...FbxSdk\2009.1\lib" 自身のインストールパスを指定して下さい 入力 追加の依存ファイル fbxsdk_md2005d.lib リリースモードの場合はfbxsdk_md2005.libに変更です。
LIBCMTの無視は必須です。特定のライブラリの無視 LIBCMT
前のバージョンだとUnicode設定でエラーになったのですが、本バージョンでは大丈夫でした。ランタイムライブラリについても対応するライブラリがすべて用意されています。大変至れり尽くせりになりました(^-^)。
追加の依存ファイルで設定するライブラリファイルは、お使いのVisual Studioのバージョンに合わせて下さい。例えばVisual Studio 2008ならばfbxsdk_md2008d.libなどです。
B main.cppで最小プログラム
続いてプログラム側に移りましょう。メイン関数を置くmain.cppファイルを作成して、次のようなプログラムを書いてみます:
メイン関数(Win32アプリの場合) #include <windows.h>
#include <tchar.h>
#include "fbxsdk.h"
int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
// SDKマネージャ生成
KFbxSdkManager *pSdkManager = KFbxSdkManager::Create();
return 0;
}
メイン関数(コンソールの場合) #include <tchar.h>
#include "fbxsdk.h"
int _tmain(int argc, _TCHAR* argv[])
{
// SDKマネージャ生成
KFbxSdkManager *pSdkManager = KFbxSdkManager::Create();
return 0;
}
プログラムの詳細については次章以降で説明しますが、ここではプロジェクトの設定が正しく、コンパイラが通る事を確認します。上のプログラムをコンパイルしてエラーが出なければとりあえず設定は成功です。
この設定とプログラムがFBX SDKのすべての基本となります。では次章からは実際にSDKを使っていきましょう。