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-08-19Fix issue with EWA filtering in compositor which disabled alphaSergey Sharybin
It was caused by wrong copy-paste thing, which replaced check "whether alpha channel is enabled" with "whether alpha channel is not zero" (which is always zero in accumulator). Compositor always works with RGBA, so no need to do any special checks here. TODO: Maybe MapUV ode shall ignore alpha channel?
2013-08-17fix for crash in compositor/opencl, the error value of -1001 would read past ↵Campbell Barton
the error-string array.
2013-08-16Merge plane track feature from tomato branchSergey Sharybin
This commit includes all the changes made for plane tracker in tomato branch. Movie clip editor changes: - Artist might create a plane track out of multiple point tracks which belongs to the same track (minimum amount of point tracks is 4, maximum is not actually limited). When new plane track is added, it's getting "tracked" across all point tracks, which makes it stick to the same plane point tracks belong to. - After plane track was added, it need to be manually adjusted in a way it covers feature one might to mask/replace. General transform tools (G, R, S) or sliding corners with a mouse could be sued for this. Plane corner which corresponds to left bottom image corner has got X/Y axis on it (red is for X axis, green for Y). - Re-adjusting plane corners makes plane to be "re-tracked" for the frames sequence between current frame and next and previous keyframes. - Kayframes might be removed from the plane, using Shit-X (Marker Delete) operator. However, currently manual re-adjustment or "re-track" trigger is needed. Compositor changes: - Added new node called Plane Track Deform. - User selects which plane track to use (for this he need to select movie clip datablock, object and track names). - Node gets an image input, which need to be warped into the plane. - Node outputs: * Input image warped into the plane. * Plane, rasterized to a mask. Masking changes: - Mask points might be parented to a plane track, which makes this point deforming in a way as if it belongs to the tracked plane. Some video tutorials are available: - Coder video: http://www.youtube.com/watch?v=vISEwqNHqe4 - Artist video: https://vimeo.com/71727578 This is mine and Keir's holiday code project :)
2013-08-05SplitViewer node:Sv. Lockal
- fix thumbnail preview (previously it showed only one input) - make SplitViewer node update even if the second input is not connected - now it works when the first socket is connected to a zero-sized node tree (e. g. Color Input node) - SplitViewer node is now based on 2 operations: SplitOperation and ViewerOperation. - ViewerBaseOperation was removed as a redundant one. Any future viewer style node can use the same principle and prepare the output before passing to an actual ViewerOperation. Thanks Lukas Toenne for reviewing this patch and giving me get few pieces of advice.
2013-07-22fix [#36248] Crash using factor input on color mix node.Campbell Barton
2013-07-19style cleanup: switch statements, include break statements within braces & ↵Campbell Barton
indent. also indent case's within the switch (we already did both of these almost everywhere)
2013-07-17style cleanupCampbell Barton
2013-07-17Possible fix for [#36086] Activating the opencl option in the compositor ↵Thomas Dinges
causes blender crash * Now OCL_init() returns error messages if the OpenCL library cannot be loaded.
2013-06-13Fix #35634: weight paint did not do z-buffer culling anymore on Windows ↵Brecht Van Lommel
after recent change to size of bool.
2013-05-17Fix #35369: Crop node or FileOutput node bug.Sergey Sharybin
Issue was caused by file output node actually, The thing here is, compositor output does have fixed resolution and we could predict how to map coordinates for border and cropping in that case. But viewers and file output nodes are currently totally depending on an input resolution. Could not see how border could be applied reliably in this cases. Disabling border option for file output node, so now it shall behave the same way as it was before. Discovered issues when using cropping to render border, namely there's an offset in viewer nodes and previews, but this is separate issue i guess (file output seems to work fine). Will revisit this issue in next days.
2013-05-05correction for uv template, also some doxygen comment corrections. Campbell Barton
2013-04-28minor changes, BLI_uvproject_from_view was doing matrix multiply for no ↵Campbell Barton
reason, quiet float/double warning.
2013-04-24Fix for #34739 and #35060, avoid ambiguity in compositor viewer nodes.Lukas Toenne
The design changes coming with pynodes for the node editor allow editing multiple node groups or pinning. This is great for working on different node groups without switching between them all the time, but it causes a problem for viewer nodes: these nodes all write to the same Image data by design, causing access conflicts and in some cases memory corruption. This was not a problem before pynodes because the editor would only allow 1 edited node group at any time. With the new flexibility of node editors this restriction is gone. In order to avoid concurrent write access to the viewer image buffer and resolve the ambiguity this patch adds an "active viewer key" to the scene->nodetree (added in bNodeTree instead of Scene due to otherwise circular DNA includes). This key identifies a specific node tree/group instance, which enables the compositor to selectively enable only 1 viewer node. The active viewer key is switched when opening/closing node groups (push/pop on the snode->treepath stack) or when selecting a viewer node. This way only the "last edited" viewer will be active. Eventually it would be nicer if each viewer had its own buffer per node space so one could actually compare viewers without switching. But that is a major redesign of viewer nodes and images, not a quick fix for bcon4 ...
2013-04-05code cleanup: include orderCampbell Barton
2013-03-29misc minor edits.Campbell Barton
- pass string size to BLI_timestr() to avoid possible buffer overrun. - quiet warning for mingw. - include guards for windows utf conversion funcs. - fix for mistage in edge-angle-selection check. - some style cleanup.
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-22Add missing comment for m_isResolutionSetSergey Sharybin
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-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-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 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-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-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-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-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-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-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-01-09style cleanupCampbell Barton
2012-12-24Fix #33650: Compositor locks up when input is an unrendered render layer.Sergey Sharybin
Issue was caused by resolution detecting which assumed zero resolution is undefined one and should be re-evaluated. It doesn't work in cases when there's a missing input, causing lots of unneeded resolution re-calculation. It wasn't so much issue in average sized node trees, but it was a real problem in generated tree from the report. Currently used pretty simple solution which added a boolean flag to the node operation which signal whether resolution was ever set or not. There're probably smarter solutions here but can not think about them.
2012-12-23style cleanup: wrap long lines (>200)Campbell Barton
2012-12-01fix [#33368] Crash with multilayer exr nodeCampbell Barton
2012-11-30Final render wouldn't set compositor's update_draw callback, so added NULL checkSergey Sharybin
Seems no extra notifiers should be added here.
2012-11-30Compositor should never add notifiers by himself, notifiers should be addedSergey Sharybin
from main thread using job update callback. Added new execution-time callback to bNodeTree which marks job to be updated. The code here could be a bit not so obvious because in some cases job update callback need to merge local tree, but it's only needed for old compositor system which is gonna to be removed soon, so decided not to bother with cleanup now. Removing old compositor system will also allow to drop stats_draw callback from bNodeTree. This should fix following bugs:
2012-11-28typo's and some style cleanup, also added asserts into BLI_vsnprintf and ↵Campbell Barton
BLI_sprintfN when invalid args are given.
2012-11-26code cleanup: doxy comment corrections and correct own typo animation player ↵Campbell Barton
docs.
2012-11-23Compositor: Disabled debug assert checks for connected input sockets after ↵Lukas Toenne
convertToOperations. This breaks quite a lot and is not really necessary, since connected Node inputs are ignored later on. Connected outputs however are still forbidden, this indicates a real bug.
2012-11-14Map Range Node (tiles)Dalai Felinto
this node allows for more control for normalization of the mapped input range. Made during BlenderPRO 2012 - Brasilia, Brazil :) Idea and testing: Daniel Salazar Implementation: yours truly Reviewed by Lukas Toenne and Sergey Sharybin
2012-11-01style cleanupCampbell Barton
2012-10-29Added compositor graph functions for removing socket connections explicitly ↵Lukas Toenne
in convertToOperations. The InputSocket->unlink function should only be used in combination with relinkConnectionsDuplicate, in which case the original node connection will still exist. This would trigger an assert failure, so the original connection should be removed. Only node using this atm is the channel separation node, but will be needed for future group nodes too.
2012-10-24Oeps... Enabled the pixelate node added documentation, removed unneededJeroen Bakker
code
2012-10-23Solve unresolved call of min(int&, unsigned int&)Sergey Sharybin
Alternative could be using unsigned ints for min/max chunks.
2012-10-23use min_ max_ functions in more places.Campbell Barton
also fix minor error in MOD decimate when the modifier did nothing the reported face count would be wrong.
2012-10-21style cleanup: bge, switch statements mostly.Campbell Barton
also left bmesh decimator on in previous commit.
2012-10-21style cleanup: trailing tabs & expand some non prefix tabs into spaces.Campbell Barton
2012-10-21code cleanup: spellingCampbell Barton
2012-10-19Additional debug assert in the compositor for checking correct conversion of ↵Lukas Toenne
Nodes to Operations. This will trigger an assert failure whenever a node has remaining socket connections after conversion. This would mean that not all sockets have been properly relinked and helps detect incomplete code.
2012-10-14code cleanup: remove redundant casts. quiet some qualifier warnings.Campbell Barton
2012-10-09code cleanup: make header defines more consistent, JOYSENSOR header guard ↵Campbell Barton
had a typo too.
2012-09-25Compositor:Jeroen Bakker
* Node muting in node groups didn't work. [#32597] Mute one node in a group blocks it It looked for connections in the main tree, and not inside the group.