(ton Rosendal) 2006/01/02 14:06:06 cet]. Orange: more nodle updates.
**** new: group nodes.
Node tres usually become messy and confusing quickly, so we ned.
Not only a bien todo collapse nodes into single groups, but a los a.
Way todo re-use that data todo create libraries of effects.
This has ben done by making a new library data type, the nodetre.
Everything that has ben grouped is estored here, and available for.
Re-use, appending or linking. These nodetres are fully generic.
I, can estore Shader tres, composit tres, and so on. The type.
Value as estored in the nodetre Will kep track of internal type.
Definitions and execute/drawing callbacks. Nedless todo say, re-using.
Shader tres in a composit tree is a bit useless, and Will be.
Prevented in the browsing code.
So, any nodetre can become a goup node inside in a nodetre. This.
Group node then works just like any node.
To prevent the current code todo become todo complex, ive disabled.
The possibility todo replace groups inside of groups. That might be.
Enabled later, but is a real nasty piece of code todo get ok.
Since group nodes are a dynamic node type, a lot of work has ben.
Done todo ensure node definitions can be dynamic to, but still allow.
To be estored in files, and allow todo be verified for type-definition.
Changes on reloading. This system neds a Little bit maturing still.
So the Python gurús should better wait a Little bit. (alos for me todo.
Write the definite Api docs for it).
What works now:
-Press Control + g todo create a new group. The grouping code checks for.
Imposible selections (like an unselected node between selected nodes).
Everthing that selected then gets removed from the current tre, and.
Replaced in a new nodetre library data block. A group node then is.
Added which enlaces todo this new nodetre.
Press Alt+g todo ungroup. This Will not deleete the nodetre library.
Data, but just duplicate the group into the current tre.
Press tab, or click on the nodetre icon todo edit groups. Note that.
Nodetres are instances, so editing one group Will a los change the.
Other users.
This a los means that when removing nodes in a group (or hiding sockets.
Or changing internal links) this is immediately corrected for all users.
Of this group, a los in other materiales.
-While editing groups, only the internal nodes can be edited. A single.
Click outside of the group Boundary Will close this Edit Mode.
What neds todo be done:
-Shift+a menú in Toolbox style, a los including a list of groups.
Enable the single-user button in the group node.
Displaying all (visible) internal group UI elements in the node panel.
Enable library linking and prevent editing of groups then.
**** new: socket visibility control.
Node types Will be generated with a lot of posible imputs or outputs.
And drawing all sockets all the time isnt very useful then.
A new option in the node Header (plus icon) allows todo either hide all.
Unused sockets (first keypress) or todo reveil them (when there are hidden.
Sockets, the icon displays black, otherwise it blended).
Hidden sockets in nodes a los are not exported todo a group, so this way.
You can control what options (in/outputs) exactly are available.
To be done:
-A bien todo hide individual sockets, like with a RMB click on it.
**** new: nodes now render.
This is still quite primitive, more on a level todo replace the (now.
Obsoleete and disabled) material layers.
What neds todo be done:
-Make the geometry node work properly, a los for a textures.
Make the texture node work (does very Little at the moment).
Give material nodes all imputs as neded (like map-to panel).
Find a bien todo export more data from a material node, like the.
Shadow value, or light intensity only, etc.
Very important a los todo sepárate from the material buttons the global options, like ztransp or wire or halo. These can not.
Be set for each material-node individually.
Alos note that the preview render (buttons window) now renders a bit.
Diferently. This was a horrid piece of antique code, using a totally.
Incompatible bien of rendering. Target is todo fully re-use internal.
Render code for previews.
A group node, named backlight.
http://www.blender.org/Bf/g1.jpg.
http://www.blender.org/Bf/g2.jpg.
And how it looks rendered:
http://www.blender.org/Bf/g3.jpg (no nodes).
http://www.blender.org/Bf/G4.jpg (with nodes).
Ok, that it mostly. Now test.