buffer if it was an RGBA type. This caused buffer corruption in the original buffer
which would be colorspace converted again (for each render). Corrected by duplicating
buffer.
from translate node. Once again courtesy of joeedh (Joe Eagar). Should be
noted that there are other nodes which seem not to respect these offsets
as well. Will investigate further.
have been in this particular case anyway), the blur radius will automatically
be limited to half the width or height of the image.
Nothing to do with this bug, but also now skips image region outside
borders when border rendering is enabled.
Composite: when using multiple scene render-nodes, and one of these
scenes got re-rendered (by making scene active temporary), the composite
cache should free the used buffers.
Now, on each render, all scenes in a Blender project are being checked.
* Added patch 5251 X/Y Offset to Split Viewer node, by Juho
(with some modifications from the patch version).
Also various small tweaks to compositor drawing & buttons.
* Added a new top-level add menu category for compositing nodes: Distort
It currently contains Translate, Rotate, Scale, Flip, Displace and Map UV
Also did some cleaning up of the ordering of add node menu items to be a
bit better organised.
* Displace Node
Displaces an input image's pixels based on an input vector mask. This can be
useful for a lot of things, like hot air distortion, quick-and-dirty compo
refraction, compositing live footage behind refracting objects, and more!
The amount of displacement in the X and Y directions is determined by:
* The value of the mask's channels
- (red) channel 1's value determines displacement along the positive or
negative X axis
- (green) channel 2's value determines displacement along the positive or
negative Y axis
If both the channel's values are equal (i.e. a greyscale image) the input
image will be displaced equally in both X and Y directions, also according to:
* The X scale and Y scale buttons
- These act as multipliers to increase or decrease the strength of the
displacement along their respective axes. They need to be set to non-zero
values for the node to have any effect.
Because of this, you can use the displace node in two ways, with a greyscale
mask(easy to paint, or take from a procedural texture), or with a vector
channel or RGB image, such as a normal pass, which will displace the pixels
based on the normal direction.
A quick practical example:
http://mke3.net/blender/etc/displace-desert-h264.movhttp://mke3.net/blender/etc/displace-desert.blend.zip
And some techie examples:
Using a greyscale mask
http://mke3.net/blender/etc/displace-bw-h264.movhttp://mke3.net/blender/etc/displace-bw.png
Using a vector mask
http://mke3.net/blender/etc/displace-vec-h264.movhttp://mke3.net/blender/etc/displace-vec.png
Please read:
http://www.blender3d.org/cms/Imaging.834.0.html
Or in short:
- adding MultiLayer Image support
- recoded entire Image API
- better integration of movie/sequence Images
Was a whole load of work... went down for a week to do this. So, will need
a lot of testing! Will be in irc all evening.
- New Passes: UV and Rad(iosity)
- New Nodes: UV Map and Index Mask
- Z-combine now is antialiased
As usual, please check the log. Has nice pics!
http://www.blender3d.org/cms/Composite__UV_Map__ID.830.0.html
For devs: the antialias code from Vector Blur is now exported in compo
too. Works pretty good. Even fixed a bug in antialias, so vectorblur
will be better.
Also: found out that OpenGL display list speedup accidentally was still
triggered with the rt button... so it did not work by default.
- Crash, caused by commit of 1 hour ago to fix 'All Z' render problem
- Bug: yesterday's fix for node material renders caused some issues with
precalculating correct shadow.
- Composite Translate node: input sockets allowed multiple inputs
- Blur nodes didn't accept RGB buffers (only RGBA or single channel ones)
- Mix node had maximum for 'mix' on 1.0, for passes edit that could become
more, made it 5!
although it has a lot of noise. Not to mention our bad string code gives
a load of warnings.
I've reviewed specifically:
- file reading/write
- dna and library code
- node system
- entire render module
Done a couple of files in src/ too, seemed to be nice errors.
Actually no real bug, but unfinished work in Composite:
The ZCombine node only accepted images, no value inputs for sockets.
Now only the first (top) input socket should be an image, the other ones
can use constant color or values too. Nice way to split an image in
foreground and background.
Also: added an output socket for the resulting Z value.
Do note that zcombone is aliased, no AA or sample info is available.
That's for another time.
Yesterday's commit from Brecht broke armature editmode, damaging armatures
in a way you cannot rescue. This rewinds the main changes. After commit
I'll try to find the error...
- After making a Group, internal socket values are now copied to the
group node, so an execute will give identical results
- After ungrouping, the cyclic dependency tagging didn't work well in
all cases, showing a red noodle line and giving composite errors.
For time being solved by calling the NodeSort twice.
- Viewer nodes now get previews updated always (used to be only the active)
Note: this is not for previews inside of groups!
Minor change to to how luminance detail is added to alpha channel in chroma key node.
Removed unused inputs in chroma key and luminance key nodes.
Changed chroma key controls back to sliders because I think they offer the user a more intuitive interface to the node.
Composite: Rotate and Scale nodes ignored the translation offset.
I've added rotating and scale of offset vector, but this should become a
nice 2d matrix[3][3].
Also fixed: the call "pass_on_compbuf" now has correct handling for
using duplicate buffer rects. Can be used safely again to migrate input
buffers to the output when no operation happened. This makes translate
node faster again btw.