Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-03-25Fix #34758, another Crash with NodeGroup. Took a while to get to the bottom, ↵Lukas Toenne
but the root of the issue was that nested node groups (groups inside other groups) were ungrouped ("inlined") repeatedly. This lead to preview operations being added to the same group more than once, and the redundant preview operations (beside working on the same preview buffer) did not get their correct resolution set. This in turn would then lead to previews writing beyond allocated size and causing corrupted memory + crash. Simple fix: don't expand node groups more than once.
2013-03-25code cleanup:Campbell Barton
- remove unused defines. - quiet some shadow warnings. - bevel, ifdef out some asserts that are too common. - style
2013-03-24fix for struct definition building with msvc2008 and some style cleanup.Campbell Barton
2013-03-22Add missing comment for m_isResolutionSetSergey Sharybin
2013-03-22Enable previews for inactive compo output and viewer nodes.Sergey Sharybin
This keeps old behavior and could be nice. However, it'll make compositing slower (doing final compo after editing tree). This is easy to hide preview in this case, and also i hope to implement percentage rendering soon.
2013-03-22Fix for compositor node preview sizes: Use the render output aspect ratio ↵Lukas Toenne
for estimating the required preview rect size instead of assuming a square, to avoid wasted space. Note that this does not work for newly added nodes until they have first been evaluated and a preview image has been generated (same behavior as before pynodes merge and associated preview changes).
2013-03-22code cleanup: use booleans and const's for operator vars.Campbell Barton
2013-03-22Fix for Render Layers node, reported by Jason van Gumster (Fweeb) on IRC. ↵Lukas Toenne
The render layer operations need their RenderData pointer set. This was done for all connected output operations, but not for the preview operation which uses the image color layer. In case the image output is unconnected this leads to NULL pointer access.
2013-03-21Render border + crop will be handled correct in compositor nowSergey Sharybin
This commit simply implements mapping from centered cropped canvas to a full-frame coordinates, so operations like alpha-overing render result on top of image will be properly aligned.
2013-03-21code cleanup: misc warnings/styleCampbell Barton
2013-03-20Changes to compositor output nodeSergey Sharybin
Make it so compositor output node wouldn't be calculated when Render Result image is not visible on the screen. This makes compositor tree editing more friendly and faster. Also, if there's no viewer image visible on the screen viewer nodes wouldn't be handled. Final rendering keeps unchanged for now. This solves issues when for performance artists are disconnecting compo output node before tweaking values in compositor and forgets to attach compo output node before sending file to the farm.
2013-03-20When using border rendering, use the same border for compositorSergey Sharybin
This makes compositing as fast as it's possible in this case. The only thing is border render+crop will still give funcy results. This is the next thing to be solved in compositor.
2013-03-20Fix #34694. This was actually a bug in the compositor's Bokeh Blur ↵Lukas Toenne
operation. It was writing outside of allocated memory in case of (0, 0) size buffers, with the usual unpredictable results.
2013-03-20Fix for compositor bug introduced in pynodes branch by removing the default ↵Lukas Toenne
MuteNode for unspecified nodes in the COM_Converter. Not sure why i removed this in the first place, but it means that reroute nodes are not properly replaced in composites. It worked for preview and viewer composite because the reroute nodes are replaced there already by the node tree localization ... this needs to be cleaned up.
2013-03-19change to variable size bokeh blue, dont blur larger areas then the current ↵Campbell Barton
pixel defines. caused nasty looking errors with DOF.
2013-03-19Added alpha output to movie clip compositor nodeSergey Sharybin
Pretty much straightforward change, made in the same way as texture input node. Shall not be any regressions or crashes when mixing usage of 2.66 and current trunk.
2013-03-18Use extern "C" when including BKE_node.h in C++ compositor code, to avoid ↵Lukas Toenne
linker errors on windows (undefined NODE_INSTANCE_KEY_BASE).
2013-03-18code cleanupCampbell Barton
2013-03-18Merge of the PyNodes branch (aka "custom nodes") into trunk.Lukas Toenne
PyNodes opens up the node system in Blender to scripters and adds a number of UI-level improvements. === Dynamic node type registration === Node types can now be added at runtime, using the RNA registration mechanism from python. This enables addons such as render engines to create a complete user interface with nodes. Examples of how such nodes can be defined can be found in my personal wiki docs atm [1] and as a script template in release/scripts/templates_py/custom_nodes.py [2]. === Node group improvements === Each node editor now has a tree history of edited node groups, which allows opening and editing nested node groups. The node editor also supports pinning now, so that different spaces can be used to edit different node groups simultaneously. For more ramblings and rationale see (really old) blog post on code.blender.org [3]. The interface of node groups has been overhauled. Sockets of a node group are no longer displayed in columns on either side, but instead special input/output nodes are used to mirror group sockets inside a node tree. This solves the problem of long node lines in groups and allows more adaptable node layout. Internal sockets can be exposed from a group by either connecting to the extension sockets in input/output nodes (shown as empty circle) or by adding sockets from the node property bar in the "Interface" panel. Further details such as the socket name can also be changed there. [1] http://wiki.blender.org/index.php/User:Phonybone/Python_Nodes [2] http://projects.blender.org/scm/viewvc.php/trunk/blender/release/scripts/templates_py/custom_nodes.py?view=markup&root=bf-blender [3] http://code.blender.org/index.php/2012/01/improving-node-group-interface-editing/
2013-03-14There was a regression in recent bugfix which touched Mix node.Sergey Sharybin
This commit hopefully fixes that regression.
2013-03-14Code cleanup: replace magic constant used for alpha ignore flag with a define.Sergey Sharybin
2013-03-13Report timing compositor statistics when running in background mode.Sergey Sharybin
This would help figuring out time spent on compositing, helpful for render farms.
2013-03-13Disable viewer nodes and previews when rendering in background modeSergey Sharybin
This node and operations are not useful in background mode anyway, but calculating them could be really time-consuming especially when working on 4K frames.
2013-03-12Print compositor execution statistics when in background modeSergey Sharybin
This will print memory usage, mapped memory usage, memory peak, compositing tree name and number of finished tiles to stdout when blender is rendering in background mode. This makes compositor a less blackbox and should help trouble shooting issues happening during 4K ToS project.
2013-03-12Fix for crash in special cases when mixing translate node with otherSergey Sharybin
Issue was caused by calling ensureDelta from initexecution, which will read pixels from an input and it could read from non-initialized operations. Issue was originally introduced in svn rev54235 which added ensureDelta to translate's initExecution, but since rev54349 this call seems to be doing nothing.
2013-03-12Fix #34599: Mask nodes stop working if output is later piped through HSV nodeSergey Sharybin
Issue was caused by the fix for #33650 which changed way to check whether operation resolution is set or not from checking dimensions are zero to setResolution was ever called. Such change lead to conflict with MixBase operation (used for Mix node) which uses temporary zero resolution to check whether input socket resolution is known. This leads to zero resolution setting to that branch of tree. After this resolution will never set to it's actual value. For now solved by changing logic how MixBase operation detects resolution. Namely instead of using trick with temporary zero resolution and calling determineResolution for all inputs, and then call base class's method to determine resolution just once again, check whether input socket is connected and if so use it's resolution. Shall not be regressions for real-life trees, but keeping an eye on this and doing more tests is for sure welcome.
2013-03-09Fix for recent compo border commitSergey Sharybin
Viewer operations shall be aware of border as well, otherwise CPU would be busy for a while full compo isn't done for just a small preview image in a node.
2013-03-07Border for compositor viewer node featureSergey Sharybin
This adds border option to compositor, which affects on a backdrop and viewer nodes, which is useful for faster previews and tweaks. Final compositing still happens for the whole frame, but if it'll be needed it's not so difficult to support it as well. To use border there's Ctrl-B shortcut in the compositor editor, which i used to define region you want to restrict compositing to. There's also "Viewer Border" option in the N-panel in case you'll want to disable border compositing. Some areas could be cleaned a bit, like ideally it shall not be viewer image clearing in viewer_border_update RNA callback, but currently it's not so much clear how to make it the same fast as simple memset and glue it somehow to compositor. Will think of nicer solution a bit later.
2013-03-04Fix #34475: Weird noise bug with Texture nodesSergey Sharybin
Made Texture compositor input node single-threaded since texture trees are not thread-safe. Also fixed texture being flipped horizontally and vertically. Why nobody noticed this for 3 releases already??
2013-03-04code cleanup: unused vars in collada, preprocessor formatting & warning in ↵Campbell Barton
mingw. also compiling without bullet needed a stub added.
2013-03-01Fix #34461: Inconsistent behavior of "Color Mix Node" and "Alpha Over Node"Sergey Sharybin
Added compatibility option "Straight Alpha Output" to image input node When this option is enabled, image input node will convert float buffer to straight alpha. This is not what you'll usually want with new alpha pipeline, nit this is needed to preserve compatibility with older files saved in 2.65. In that version byte image are resulting with straight alpha passing to the compositor and alpha-overing required extra premultiplication of inputs. So, that's why Straight Alpha Output is needed -- it's set in versioning code for byte node images so they'll still output straight alpha. This option is currently only available in N-panel. Additional change: added Alpha Mode for image input node to N-panel.
2013-02-27Fix various warnings with clang build, and adjust cmake clang warnings flagsBrecht Van Lommel
to include a few more that gcc is using too.
2013-02-18Correction to r54600Sergey Sharybin
Calculate dependent area based on distortion model rather than using 15% of image resolution for this. Some assumptions here: - We're assuming real-life camera calibration is used here - Maximal undistortion delta would be achieved on frame boundary - Distortion fully goes inside frame This makes it possible to approximate margin for distortion by checking undistortion delta across frame boundary and use it for dependent area of interest. We do not use any formula-based equation here because we're likely support other distortion models and in that case it'll be stupid to try detecting formula here.
2013-02-17code cleanup: change order of args in void ↵Campbell Barton
BKE_object_where_is_calc_time_ex() so extra arg is at the end (loose convention for *_ex() funcs). also some style cleanup.
2013-02-17Fix for [#34182] Movie Distortion and Bilateral Blur doesn't work togetherJeroen Bakker
* added area of interest based on a radius around the input tile. If someone can implement a correct formula (based on K1, K2 and K3) and send it to me, I will be happy to apply it! - At Mind -
2013-02-17Added option for group node buffering in the compositor.Monique Dewanchand
Justa cluster did not have enough memory to handle all Mango 4k scenes. Option is default disabled and can be enabled in the performance panel. - At Mind -
2013-02-15style cleanupCampbell Barton
2013-02-10We've reconsidered previous patch in IRC.Sergey Sharybin
It's more useful to completely ignore alpha for display of straight colors. Supporting straight pipeline is possible, but not a topic for bcon4.
2013-02-10Added option to composite/viewer nodes which specifys whether alpha inputSergey Sharybin
is straight or not (premultiplied is default). This is useful in cases when you want to check on output of such nodes as keying which does have straight alpha output. Also added missing do_version code to previous compo do_versions.
2013-02-07fix for [#34133] Creation of an RGBA buffer from an RGB color and an alpha ↵Jeroen Bakker
channel not possible.
2013-02-06style cleanup: some warnigs & spelling.Campbell Barton
2013-02-06Code clean up translate nodeMonique Dewanchand
added constants. moved the code to a separate class. so it can be reused for other nodes
2013-02-04Compile fix for r54300, setFactorXY function does not return a value. Thomas Dinges
2013-02-04Compositor "Relative" option for Translate node, same as for other nodes thisBrecht Van Lommel
makes it possible to specify an offset relative to the render resolution (so 0.5 is half the image rather than giving the number of pixels). It's a bit late but it's a trivial change and needed for 4k mango render.
2013-02-04style cleanup: spaces -> tabsCampbell Barton
2013-02-04style cleanupCampbell Barton
2013-02-03One fix for bug [#33785] compositor is (unnecessarily?) slowMonique Dewanchand
Added additional buffers - new subtree - for groupnodes. One needs to be aware of how groupnodes should be created. Having translate & scale nodes, with the translate inside the groupnode and the scale node outside, causes artefacts. Both should be inside or outside the groupnode. Same holds for other distort nodes.
2013-02-03Fix for [#34022] Lines on renders using Blur node in flat modeJeroen Bakker
2013-02-01Move opencl and reigidbody from source/blender/ to intern/Sergey Sharybin
This modules does not depend on any blender-specific data structures or algorithms and due to our policy better be placed to intern/ Shall be no functional changes, tested CMake and SCons on Linux, hopefully other platforms will work as well. P.S. SVN history shall be preserved for the files.
2013-02-01style cleanupCampbell Barton