BlenderからエクスポートしたFBXファイルにVS2013モデルエディタでテクスチャを貼る

公開:2013-07-08 16:35
更新:2020-02-15 04:37
カテゴリ:directx,visual studio,blender,windows,c++

テクスチャー情報はインポートされなかった。

BlenderでテクスチャーマップしたものをFBXでエクスポートしてVS2013のモデルエディタに読み込んでみた。マテリアルの情報はインポートできたけどもテクスチャーマッピングの情報は残念ながら欠損していた。

エクスポートするときに何かオプションを設定しなければいけないのかもしれないが。そこでモデルエディタでテクスチャマップを貼ってみた。試行錯誤の結果なのでこれで正しいのかはよくわからない。

モデルエディターでUVビットマップを出力する

オブジェクトを右クリックすると、「UVイメージのエクスポート」→「現在強調しているサブメッシュの場合」を選択してUVビットマップを作成する。

そうすると下図のようなビットマップができる。このビットマップに模様を書く。

マテリアルにテクスチャをセットする

オブジェクトをクリックするとプロパティにマテリアルなどの情報が表示されるので、その中のTexture1にさっき作成したUVビットマップをセットする。セットすると画面のオブジェクトにテクスチャーが貼られる。

レンダリング

このデータをビルドすると.cmoファイルが作成される。その時指定したテクスチャーは.ddsファイルに変換されて、ビルドのターゲットディレクトリに保存される。あとはDirectXTKのModelオブジェクトに読み込んでレンダリングすればいいのだが、このままだと実行時に.ddsファイルが見つからないエラーが発生する。通常ビルドのターゲットディレクトリ中のAppXフォルダにアプリが配置されるので、そこに.ddsファイルを手動でコピーすると表示されるようになった。このあたりなんとかならんのかと思案中である。