16

I've come across the terms "RNA" and "RNA property" in programming documentation before. Can someone explain to me what these terms mean?

Are these general programming terms that apply to many languages, or are these non-general terms? It's difficult to avoid getting search results related to biology for this, and the programming vocab sites I've been to don't have them. All I see anywhere are acronyms and no place to figure out exactly what they are because everyone who's anyone apparently already knows...

Here are some examples:

"RNA architecture"

"RNA/DNA"

Panel properties Properties were discussed in section Properties, but we did not explain how to display custom properties in a panel. This script does exactly that. An RNA property is displayed with the syntax

layout.prop(ob, 'myRnaInt')

Glorfindel
  • 21,988
  • 13
  • 81
  • 109
Qutorial
  • 263
  • 2
  • 5

3 Answers3

26

DNA and RNA are terms used by the Blender devs and community to refer to their system of serializing Blender state data, which is as old as Blender itself. Each .blend file includes a DNA structure, which details pretty much everything about the blend and about the version and exact copy of Blender last used to work on it. This makes Blender files highly backward-compatible, as they allow any future version of Blender to configure itself the same way an older version would have been to work with older files, and to digest the files in an extremely normalized way that can be extended version-to-version without changing the file structure.

RNA is a newer concept; think of it as a DTO for DNA. It allows pieces and sub-trees of DNA to be passed around within Blender and between Blender and its plugins (the primary language for these being Python), and is the primary way that this is done.

A short primer: http://www.blendernation.com/2008/12/01/blender-dna-rna-and-backward-compatibility/

Garrett
  • 4,007
  • 2
  • 41
  • 59
KeithS
  • 70,210
  • 21
  • 112
  • 164
2

It's specific. For example the Blender software uses those akronyms:

Blender uses a unique internal format called DNA to store and reference 3D assets. The name is an analogy to the biological term,..

[..]

RNA is a current development that comprises an important behind-the-scenes component of the 2.5 changes..

from Mastering Blender - Tony Mullen

Community
  • 1
  • 1
1

I have no experience of this myself but judging from a very quick search (thanks google) it appears that RNA refers to an API for the Python programming language. DNA appears to be closely related (as you would expect). I have not seen it referred to in any other language. (This may be wrong but it seems to be to Python, what jQuery is to javascript).

Gravitate
  • 2,885
  • 2
  • 21
  • 37
  • You could be forgiven for thinking that, but it's Blender-specific, and used in Python because that's what scripts and plugins for Blender are written in. – KeithS Aug 14 '12 at 22:35
  • @KeithS Thank you for clarifying. +1 for your comprehensive answer. – Gravitate Aug 15 '12 at 16:44