Go to file
Ton Roosendaal ea7538dca6 Orange: more noodle updates!
**** NEW: Group Nodes

Node trees usually become messy and confusing quickly, so we need
not only a way to collapse Nodes into single 'groups', but also a
way to re-use that data to create libraries of effects.

This has been done by making a new Library data type, the NodeTree.
Everything that has been grouped is stored here, and available for
re-use, appending or linking. These NodeTrees are fully generic,
i.e. can store shader trees, composit trees, and so on. The 'type'
value as stored in the NodeTree will keep track of internal type
definitions and execute/drawing callbacks. Needless to say, re-using
shader trees in a composit tree is a bit useless, and will be
prevented in the browsing code. :)

So; any NodeTree can become a "Goup Node" inside in a NodeTree. This
Group Node then works just like any Node.
To prevent the current code to become too complex, I've disabled
the possibility to insert Groups inside of Groups. That might be
enabled later, but is a real nasty piece of code to get OK.

Since Group Nodes are a dynamic Node type, a lot of work has been
done to ensure Node definitions can be dynamic too, but still allow
to be stored in files, and allow to be verified for type-definition
changes on reloading. This system needs a little bit maturing still,
so the Python gurus should better wait a little bit! (Also for me to
write the definite API docs for it).

What works now:

- Press CTRL+G to create a new Group. The grouping code checks for
impossible selections (like an unselected node between selected nodes).
Everthing that's selected then gets removed from the current tree, and
inserted in a new NodeTree library data block. A Group Node then is
added which links to this new NodeTree.

- Press ALT+G to ungroup. This will not delete the NodeTree library
data, but just duplicate the Group into the current tree.

- Press TAB, or click on the NodeTree icon to edit Groups. Note that
NodeTrees are instances, so editing one Group will also change the
other users.
This also 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, also in other Materials.

- While editing Groups, only the internal Nodes can be edited. A single
click outside of the Group boundary will close this 'edit mode'.

What needs to be done:

- SHIFT+A menu in toolbox style, also 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 possible inputs or outputs,
and drawing all sockets all the time isn't very useful then.

A new option in the Node header ('plus' icon) allows to either hide all
unused sockets (first keypress) or to reveil them (when there are hidden
sockets, the icon displays black, otherwise it's blended).

Hidden sockets in Nodes also are not exported to a Group, so this way
you can control what options (in/outputs) exactly are available.

To be done:
- a way to hide individual sockets, like with a RMB click on it.

**** NEW: Nodes now render!

This is still quite primitive, more on a level to replace the (now
obsolete and disabled) Material Layers.

What needs to be done:

- make the "Geometry" node work properly, also for AA textures
- make the Texture Node work (does very little at the moment)
- give Material Nodes all inputs as needed (like Map-to Panel)
- find a way to export more data from a Material Node, like the
  shadow value, or light intensity only, etc

Very important also to separate from the Material Buttons the
"global" options, like "Ztransp" or "Wire" or "Halo". These can not
be set for each Material-Node individually.

Also note that the Preview Render (Buttons window) now renders a bit
differently. This was a horrid piece of antique code, using a totally
incompatible way of rendering. Target is to fully re-use internal
render code for previews.

OK... that's it mostly. Now test!
2006-01-02 13:06:05 +00:00
bin/.blender Bugfix #2094 2005-01-05 10:27:48 +00:00
doc Updated BL text. 2005-06-06 12:18:44 +00:00
extern more game engine bug-fixes, hooked up 'formfactor' as inertia tensor tweaker, friction/restitution, more scaling related fixes. 2005-12-31 21:59:56 +00:00
intern Fixed several bugs: python refcounting related and Bullet related (basic add/remove object support, bounding volume hierarchy). Added a few files, updated the Bullet scons. Vc6/7 Bullet projectfiles need to add a couple of files: 'Bullet/CollisionShapes/BvhTriangleMeshShape.cpp', 2005-12-31 07:20:08 +00:00
po changed: 2005-11-02 15:59:14 +00:00
projectfiles MSVC6 projects 2005-11-23 21:11:36 +00:00
projectfiles_vc7 Radiance HDR image file includes 2005-11-21 19:16:52 +00:00
release New icon image 2005-12-28 16:02:52 +00:00
source Orange: more noodle updates! 2006-01-02 13:06:05 +00:00
tools attempt to fix a link problem by changing the link-order or ketsji/bullet 2005-10-29 17:54:04 +00:00
COPYING Biiig commit! Thanks to 2-3 weeks of cvs freeze... 2004-12-27 19:28:52 +00:00
Makefile Clean up for Makefiles: some of the directories were being printed 2005-04-09 22:40:34 +00:00
README Test commit, nothing to see here. 2004-08-24 02:51:07 +00:00
SConstruct Adding libtiff for win32 build 2005-11-23 14:53:51 +00:00

Welcome to the fun world of open source.

For instructions on building and installing Blender, please see the file named
INSTALL.


---------------------.Blanguages and the .blender directory---------------------

The .blender directory holds various data files for Blender.
In the 2.28a release those are the .Blanguages file containing a list of
translations, the translations themselves and a default ttf font.

Blender checks for the presence of this directory in several locations:
	- the current directory
	- your home directory
	- On OSX, the blender bundle is also checked 
	- On Windows, the installation dir is checked.

If you get a 'File ".Blanguages" not found' warning, try to copy the .blender
dir to one of these locations (your home directory being recommended).



-------------------------------------Links--------------------------------------

Getting Involved:
http://www.blender.org/docs/get_involved.html

Community:
http://www.blender3d.org/Community/

Main blender development site:
http://www.blender.org/

The Blender project homepage:
http://projects.blender.org/projects/bf-blender/

Documentation:
http://www.blender.org/modules.php?op=modload&name=documentation&file=index

Bug tracker:
http://projects.blender.org/tracker/?atid=125&group_id=9&func=browse

Feature request tracker:
http://projects.blender.org/tracker/?atid=128&group_id=9&func=browse