lukas.toenne at googlemail.com
Tue Aug 23 12:27:47 CEST 2011
I've been doing some work on the node system in my branch(es), part of
which is also related to "pynodes" . There is at this time no
feature comparable to 2.4x python script nodes, the changes are more
fundamental than "simply" adding a node type for script links.
The core change i made is that node types, as well as tree and socket
types, are defined as dynamically registered information structs,
which can be done from C code as well as python scripts (hence
"pynodes"). It works much in the same way as operator, menu and panel
types are currently defined from python scripts. The idea is that this
will allow external engines (e.g. renderers) to define nodes outside
of the blender core code and add a few simple python script addons to
make them available in the editor, instead of having to modify the DNA
files and other core stuff.
Note that this is not directly tied to a particular "execution"
system, such as a renderer (be it BI or Cycles), the compositor or
*cough* texture nodes. In order to get this functionality there will
need to be an extended node base class that supports the execution
mechanism, so python scripts can implement the appropriate function.
However, i'm currently busy working on particle nodes  (which are
also based on the pynodes branch), so i won't implement this any time
soon. Beside that there is lots of other things todo before this code
is anywhere near trunk ready, currently all previous node types are
disabled even! If somebody would want to continue working on this code
i'd be glad to give advice and any help i can :)
More information about the Bf-committers