Commit Graph

20 Commits

Author SHA1 Message Date
Nathan Letwory
19a9cffdf0 doxygen: blender/nodes tagged. 2011-02-27 20:13:22 +00:00
Nathan Letwory
5b607701a7 doxygen: prevent GPL license block from being parsed as doxygen comment. 2011-02-23 10:52:22 +00:00
Lukas Toenne
803c7fb4d4 Finished the node type definition cleanup started in r34682. All static node types should now use the node_type_* definition helpers to initialize their bNodeType structs. 2011-02-08 09:02:16 +00:00
Lukas Toenne
dbb5e5dec2 Fix for 25655: Crashes with texture node in compositor.
Texture node was using the preview buffer instead of socket output buffers, which is already free'd at that point.
2011-01-16 16:00:06 +00:00
b67d08c3c7 Todo item:
Compositor: Texture Node now behaves like an image.
- Image always in render output size
- Buffer outputs RGBA and Value both supported
- Works for filter and blur and scaling too.
- Mixing 2 textures works

Implementation note:
The texture node was meant to be 'procedural', not a buffer
but a color-sample method. Unfortunately the node editor 
didn't support this well, blur/filter/scale ignored it too.

For now, its better to drop this procedural concept, then
things work at least as expected. :)
2011-01-06 14:58:58 +00:00
5f64450726 remove assignments which are unused. 2011-01-06 01:29:13 +00:00
e5a9dd928a Bugfix #25086
The texture node is procedural; like RGB node it has no real buffers,
but allows per-pixel reading. The compositor uses nodes that directly
access buffers too, which conflicts with it... needs more design here.

Restored old functionality that just passes on preview size buffers
for nodes to prevent crashes. Giving it a render-size buffer is not
nice; the resolution-independence of texture nodes is interesting to
keep.

Solution could be:
- visually tag input/output sockets for this case (sockets with buffers, 
  vs sockets with values), so users know what to expect.
2010-12-08 13:19:27 +00:00
d01054da0f Bugfix #24933
Compositor: Texture node only allowed 1 user, with more nodes using it
there was a thread conflict, using same memory for writing values.

Also: brought back the original intention for texture nodes, which is to
be using a "procedural image", not allocating memory for a buffer, but
only allowing to read per pixel. Commit in 2007 (!) allocated full buffers
for texture nodes, without using them even.
2010-11-28 18:34:16 +00:00
a9050083fe Fix Texture node don't take care render size.
The texture node was not taking into account the precentage of the
render when create the output buffer.

Reported by venomgfx at irc.
2010-07-08 19:29:41 +00:00
081c1205a3 correct fsf address 2010-02-12 13:34:04 +00:00
fd511eb984 Node Bugfixes:
* Compo node backdrop works again.
* Compo node previews and backdrop now get correct color management
  float to byte conversion.
* Compo nodes got unecessarily recalculated while moving nodes.
* Fix compo node viewer nodes not getting activated correctly.
* Main compo node preview render computations are now outside of
  mutex lock, so better for multithreading.
* Tex node outputs did not work in some files loaded from 2.4.
* Change RNA updates to take into account groups that may be shared
  between multiple node trees.
2009-10-07 22:05:30 +00:00
f7cb86df3a 2.5
Think global, act local!

The old favorite G.scene gone! Man... that took almost 2 days.
Also removed G.curscreen and G.edbo.

Not everything could get solved; here's some notes.
- modifiers now store current scene in ModifierData. This is not
  meant for permanent, but it can probably stick there until we
  cleaned the anim system and depsgraph to cope better with
  timing issues.
- Game engine G.scene should become an argument for staring it.
  Didn't solve this yet.
- Texture nodes should get scene cfra, but the current implementation
  is too tightly wrapped to do it easily.
2009-01-04 14:14:06 +00:00
6dec5db1e6 Fix for bug #8073: texture nodes connected to a viewer could crash.
Also fixed a bug where procedural buffers did not convert correctly
to different buffer types (e.g. value -> rgba would give red).
2008-04-07 15:21:25 +00:00
e625266162 Fix for bug #8385: vector inputs of texture node in the compositor did
not work correct, it should use bNodeStack inputs like other nodes.
2008-03-13 11:26:18 +00:00
a1c5b3b51d * New feature on compo scale node: "Scene Size %"
This option sets the relative scaling factor to the amount set in the 
scene "100%/75%/50%/25%" buttons. It's useful when you've got a fixed 
background image, and want to do preview renders at a lesser 
percentage, so you don't have to go and change the scale node each 
time you change the %.

Also removed unnecessary use of a global from texture node.
2007-11-13 23:53:58 +00:00
091d1e15a9 * Change/fix to texture comp node
Previously if the texture node was not connected directly as the 
second input to a node like Mix, the size of the generated image 
was initialised to 140x140, which is not that useful. It now is 
initialised to the size of the render result if it exists, and if 
not, the size of the scene render sizeX/sizeY.

This alleviates bug #7068, which is caused by the displace node 
trying to get pixels from a texture node, where the texture node 
doesn't contain pixels to cover the entire image (only 140x140) 
but it's not really a bulletproof solution...
2007-09-24 02:18:00 +00:00
Nathan Letwory
fb0f61c0b0 === Node editor ===
* refactor copying and freeing of node->storage by handlerizing them.
  - freestoragefunc
  - copystoragefunc
  - node_util.c/h have generic handlers for these.
2007-04-04 13:58:12 +00:00
5c760e4811 Changed node type definitions to use a dynamic list.
This will allow python or plugin defined nodes to work as well.
(And fixes compile issues with MSVC in yesterdays commit for nodes)

Code provided by Nathan L.
Fixes in his code:
- free_nodesystem() was called too late (after guarded alloc was closed)
- free_nodesystem() was freeing nodes that were not malloced even
- free_nodesystem was using free, not freeN :)
- the typedefs needed to be malloced yes, to allow duplicate nodes like
  group but also for dynamic nodes.
2007-03-26 15:07:38 +00:00
c1e9018118 All UI code reverted to drawnode.c 2007-03-25 23:54:39 +00:00
611d1c523c Initial commit. Not in build system so shouldn't interfere with anything at this point. Will commit modified versions of existing files once build system is tested. 2007-03-24 06:57:29 +00:00