Blenderのファイルフォーマットを解説する 'The mystery of the blend'

投稿日時 2009年05月10日 | カテゴリ: 技術・開発関連

B@rt氏による記事です。
今日は .blend ファイルフォーマットを完全に解説するドキュメントを。有名なデモコーダーである Jeroen Bakker氏により書かれており、このことはチャットでも話題になっています。これは初めて .blend ファイルと 'Blender DNA' の全構造を集めたドキュメントであり、今まで多くの場所に散り散りになっていました。コードのほとんどにコメントがあります。

Jeroen氏曰く、

私は Blender のコマンドラインと blend ファイル(.blend)により、Blender をレンダーパイプラインに統合した製品について作業中です。コマンドラインは一般的な使用なので問題ないのですが、blend ファイルを Blender の外で使用するのはあまりドキュメント化されていないため、難しいのです。
インターネットでは、Blender のアーキテクチャページ( http://www.blender.org/development/architecture/ )にいくつか手がかりがみつかっただけでした。これでは十分ではありません。このファイルフォーマットを本当に理解するため、Blender のソースコードをたどりました。ツールを制作する人たちに blend ファイルをサポートしてほしいという願いから、この記事では、blend ファイルフォーマットを解説していきます。

最初に、私は Blender が blend ファイルをどう処理しているかを説明します。なぜ blend ファイルフォーマットがうまくドキュメント化されていないのか、そして同時に Blender の視点から見るとその必要がないことが判ると思います。

次に blend ファイルの全体のファイル構造(ファイルヘッダとファイルブロック)に注目します。その説明の後は、より深い blend ファイルのコア、DNA構造体に行きます。これらは blend ファイルの設計図と、blend ファイルを理解するための一番重要な情報を保持しています。それが終わると、これら DNA 構造体を使い、blend ファイル内のどこからでも情報を読むことができるようになります。

この記事では、Bleder 2.48からのデフォルトの blend ファイルを使用し、目標は出力解像度を Scene から読み出すことです。この記事はプログラム言語に依存しない形で記述されており、サポート用のWebサイトも作成しました。


リンク
Blender ファイルフォーマット解説
Blender SDNA 2.49 内部 SDNA 構造
blender ファイルのパースを行う Java ソースコード(サンプルの blend2java 付き)




Blender.jpにて更に多くのニュース記事をよむことができます
https://blender.jp

このニュース記事が掲載されているURL:
https://blender.jp/modules/news/index.php?page=article&storyid=2338