It looks like you're using an ad blocker! I really need the income to keep this site running.
If you enjoy BlenderNation and you think it’s a valuable resource to the Blender community, please take a moment to read how you can support BlenderNation.

Blender DNA, RNA and extreme backward compatibility

28

Here's an interesting look into both Blender's past and it's future: In an excerpt from a discussion on IRC, Ton Roosendaal explains about Blender's existing DNA and upcoming RNA structures. DNA powers an often overlooked Blender feature - it's amazing backward compatibility. Thanks to DNA you can read Blender files back to version 1.00!

Ton writes:

Q: do DNA and RNA actually stand for anything?

They're analog to the biological meaning. Blender DNA is as old as Blender, it's a long string with encoded types for the entire internal structure of Blender's data, saved in every .blend, and in every Blender binary. With this DNA it can read older or even newer files. Blender is even "aware" of its own data types, i.e. you can give it a pointer, and Blender can find the item named "vertex" in it. This makes .blend files still readable, even when saved in 1.00 (try this example - an original Roosendaal).

Q: .. and RNA?

That's a 2.50 feature, a system to wrap DNA into a nice API to read/set Blender data and properties. It actually means "messenger DNA", which is not totally correct, because RNA makes DNA in cells.
Our RNA can auto-generate a Python data-access API, and will allow feature "everything animatable", auto-button-list-view of data and it will even handle dependencies in future.

A lot of educated engineers hated this DNA, thats why all rumour in past to replace it with XML. :) There are still people who think XML is superior... the funny thing is that Google, for all internal development, replaced XML for a similar DNA system! You drop human readability of files, but have the same flexibility, and lots of lots more speed. Afaik, Blender is the first public app doing this.

About Author

Bart Veldhuizen

I have a LONG history with Blender - I wrote some of the earliest Blender tutorials, worked for Not a Number and helped run the crowdfunding campaign that open sourced Blender (the first one on the internet!). I founded BlenderNation in 2006 and have been editing it every single day since then ;-)