[Bf-taskforce25] RNA confusement :)
Ton Roosendaal
ton at blender.org
Mon Nov 24 13:02:51 CET 2008
Hi Brecht,
Was going over RNA-ifying nodes with Nathan, and I noticed some
confusement about how far RNA wrapping should go. Especially for
pointers to data. He was even looking at ways how to connect nodes via
RNA. :)
Although you mention in your doc a notify() function, I don't think it
was meant to convert RNA to a full blown data-operator system. Things
like changing node linkage, changing constraint order in lists, etc.
are outside of the RNA scope right? Those should be either Operators,
or just part of the blender API.
Same goes for ID pointers; assigning a new pointer to data can result
in complicated exception handling, checking valid context and types,
sending events, and so on. Even ID pointers that don't seem dangerous
at first sight (assing Image to TexFace) might cause all kinds of
troubles. I'd propose to - for time being - make all pointers
RNA-read-only for that reason. In your RNA doc you can limit focus then
as:
1- Provide general access to public data properties, which were meant
to get changed by buttons, ipos, expressions, drivers or Python alike.
2- Only provide access to data pointers (linkage) to enable to find
data.
If RNA for nodes can find a specific node, and change it's user values,
we're already set for 99%. Linking nodes to new ID data then can be
either part of the regular API or an Operator.
It'll keep things simple for time being, until we know better what the
impact of rna is.
-Ton-
------------------------------------------------------------------------
Ton Roosendaal Blender Foundation ton at blender.org www.blender.org
Blender Institute BV Entrepotdok 57A 1018AD Amsterdam The Netherlands
More information about the Bf-taskforce25
mailing list