驚くべき後方互換性を持つ Blender DNA-RNA システム
投稿日時 2008年12月20日 | カテゴリ: 技術・開発関連
|
元記事:Blender DNA- RNA and extreme backward compatibility at BlenderNation
B@rt氏による記事です。
Blender の過去と未来の両方を検証する興味深い技術について。 下記の IRC からの会話の抜粋は、Ton Roosendaal による、Blender の現存の DNA 構造体と、新しい RNA 構造体についての説明です。DNA は見過ごされがちな Blender の機能ですが、そこには驚くべき後方互換性があります。DNA のおかげで1.00のファイルを読むことができるのです!
Ton によると、
Q: DNA と RNA は実際に何の役にたっているの?
これらは生物学上の意味と類似しています。Blender DNA は Blender と同じぐらい古い機能で、Blender データの内部構造全体の、タイプをエンコードした長い文字列です。すべての .blend ファイルと、Blender のバイナリに保存されています。この DNA により、新旧のファイルを読むことができるのです。
さらに、Blender は自身のデータタイプに「気づき」ます。例えば、あるポインタを与えると、Blender がその中に "vertex" という名前のアイテムを見つけることができます。これにより、.blend ファイルを1.00の時に保存されたものでさえ読み込み可能にすることができます(このサンプルをためしてみて下さい。Roosendaal オリジナルのものです)。
Q: …で、RNA は?
これは2.50の機能で、DNA システムを Blender データとプロパティを読み書きする API でうまくラップしたシステムです。実際には「メッセンジャーDNA」を意味し、この RNA は DNA を複数の細胞内に作成するため、正確には正しいわけではありません(訳注:この辺ちょっと自信なし)。 私たちの RNA は Python データアクセス API を自動的に生成可能で、将来的にはすべての機能のアニメーション対応や、データの自動ボタンリストビュー、そして依存の処理も行う予定です。
教養のあるエンジニアの多くがこの DNA を嫌がっており、それが過去にあった、XML で置き換えられるという、すべてのうわさの原因です。 まだ XML を優れたものと考えている人がいるようです…皮肉なことに、Googleはすべての内部開発者のために、XML を DNA とよく似たシステムで置き換えたというのに!
ファイルの可読性はないものの、同様の柔軟性を持ち、そして非常に高速です。私が知る限り、Blender はそれを公に行った最初のアプリです。
今回は絶賛ツッコミ受付中です。
|
|