投稿

ラベル(export-import)が付いた投稿を表示しています

Blender 2.69 imports fbx.

イメージ
Good news for game developers! いままで Blender 3D で不便だったfbxがimport可能となった(exportのみ可能だった)。fbxはそもそもAutodeskの汎用3Dデータフォーマットで、アニメーションに強いのだが、基本的にproprietary(汎用フォーマットでproprietaryとは違和感を感じる)。 Autodeskが提供する無償のsdk (c++, python対応)を利用するしかなかった。素晴らしいことに blender addonの開発者がその壁を突破 したようだ。 まだ、初期のバージョンなので不都合があるとは思うが(完璧にするのは永遠無理だろう)、import出来るようになればコミニティによって、ブラッシュアップされると思われる。ボクも協力したい。

Blenderのimport export plugin(Addon)を作るスタート地点

イメージ
ご存知のようにBlenderのよいところは、機能の充実や情報が豊富なことである。しかも、オープン・ソースのため、その気になれば、痒いところには90%手が届く(それでもボクの頭で理解できないことはある)。実はこれはとても大事なことで、さんざん調べあげたところ、最後の最後にプロプライエタリによって壁を閉ざされることになったということは経験上何度もある。アセンブラ解析までしたことも1,2度ではない。もちろん、9.9割の確率で無駄に終わった。こんなときは閉鎖性の壁が自分の周りにあるようで途方に暮れる。所詮、独占元にコネがあるところやお金のあるところしか情報はもらえないのである(全て解決してくれないことが多いけどw)。幸い、今は大きく時代がかわりつつある。 ボクの仕事ではBlenderのExport pluginは一番使いたいし、作りたい機能である。改造しやすいのはWavefront .obj(.mtl含む)でこれをベースすればよいと思う。 Wikipediaにもフォーマット が書かれているぐらいシンプルさが良いのだ。アニメーションには弱そうだが、COLLADA(xmlなのとSIDの曖昧さがツライ,日本の企業がかかわっているからw)のように複雑で曖昧ではないし、FBXのような閉鎖性(ヘッダーファイルがあると喜んでも、それに貴重な時間をかける暇はない)もない。wavefront .objのソースをプリントアプトして、ラインを引きながら解析すればすぐ理解できるのでオススメだ。余談だが、ボクはグラフィック業界ではCOLLADAような内容でjson形式にして、シンプルさを追求した汎用ファイルフォーマットが必要だと感じている。WebGLにも利用しやすいだろう。 場所はblender 2.64a(pathはunix系)を例にすると、 blender/2.64/scripts/addon/io_scene_obj/ である。これをフォルダごと、もってきて、リネームし改造をすればいい。 __init__.pyの内容を変更して、自分の好きな名前にして、カスタマイズスタートすればいいと思う。 各オプションのデフォルトを自分なりに変えて、それを動かしながらおこなえば開発の感覚がわかってくる。 注意としては 2.62から、基礎部分である Matrixの互換性 がなくなっている...