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
2018-11-14Cleanup: comment block tabsCampbell Barton
2017-11-21Cleanup: We do not use camel case in Blender codeSergey Sharybin
At least not for variables.
2017-11-21Fix T53371: Keying Node fails with values above 1Sergey Sharybin
This was expected behavior for over-exposured lamps when the mode was originally created for Tears of Steel. Turns out, there could be really bad green screen in real production which will only have green (or rather screen) channel over exposured. Tweaked condition now so we use least bright channel to see if the area has proper exposure or not. Seems to work fine in tests, but further tweaks are possible.
2013-11-19Cleanup: Renamed compositor executePixel functions and their 'read' wrappers ↵Lukas Tönne
in SocketReader. Distinguish the 3 different methods for acquiring pixel color values (executePixel, executePixelSampled, executePixelFiltered). This makes it easier to keep track of the different sampling methods (and works nicer with IDEs that do code parsing). Differential Revision: http://developer.blender.org/D7
2012-10-24rename axis_primary_v3() to max_axis_v3() to avoid confusion with ↵Campbell Barton
axis_dominant_v3(). also add min_axis_v3().
2012-10-23reduce float comparisons for keying operation and despill.Campbell Barton
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-08-10code cleanup: compositor - define size for executePixel function output ↵Campbell Barton
float array
2012-07-23Keying: apply garbage / core mattes after clampingSergey Sharybin
Applying this mattes before clamping produced ugly outline around matte boundaries.
2012-07-13Removed parameter from executePixel and initializeTileData.Jeroen Bakker
2012-07-10Keying screen: small fixes and improvements from tomatoSergey Sharybin
- Fixed issues with calculating matte with balance != 0.5 It used to be used concave combination of minimal and maximal channel values which could be inpredictable. Use concave combination of two non-major channels sorted by their index, so such combination would always use the same coefficients for particular non-major channels. - Added despill balance slider which defines balance between non-major channels used for calculating average of two colors. Difference between average value and pixel value of major screen channel defines amount of despill. Balance of 0.5 gives the same behavior as it was before this slider was added. --- svn merge -r48678:48679 -r48789:48790 ^/branches/soc-2011-tomato
2012-06-26use m_ prefix for compositor class members (all compositor operations).Campbell Barton
2012-06-24Fixes for area of interest in keying nodes: no need to wait for the wholeSergey Sharybin
input image to be calculated in some cases, use only actual area which is needed to calculate current tile. Seems to be giving some % of speedup. Verified result of keying before this patch and after this patch and they were identical, so hopefully now area of interest is indeed correct.
2012-06-23Keying node: assume overexposured pixels as foregroundSergey Sharybin
Screens are usually doesn't have overexposured pixels and all saturation / gradient math was written assuming that all channels are withing 0 .. 1 range and in cases when some channel exceeds this range matte could be completely wrong. Added special check for overesposure and assume such pixels as definitely foreground. Also fixed minimal value for edge kernel size.
2012-06-15style cleanup: compositor operationsCampbell Barton
2012-06-15Core matte input for keying nodeSergey Sharybin
This matte could be used to force alpha be at high values in areas where algorithm detects it as edge or background color.
2012-06-15Garbage mate input for keying nodeSergey Sharybin
This adds garbage matte input to new keying node which is used to force occluding things which can not be eliminated by color operations. White areas defines areas which should be removed from final result.
2012-06-14Kaying node from tomato branchSergey Sharybin
Merge keying node from tomato branch into trunk. It was considered stable and helpful by Mango team and it'll help studio pipeline, because nodes would stop disappearing when opening files in current trunk. Full information about keying nodes could be found there: http://wiki.blender.org/index.php/User:Nazg-gul/Keying
2012-06-09Actually that was an error in on of test formulas. Stick back to original one.Sergey Sharybin
2012-06-09Changes to keying nodes:Sergey Sharybin
- Replace FastGaussian blur with GaussianBokeh blur which should give better results. - Changes a bit formula of saturation which in some cases gives better result. Also included (commented out) original formula which was also checked by Brecht and which gave better result in some other cases. - Made clipping white/black temporal dependent, so hopefully it wouldn't destroy gradients on edges.
2012-05-30Several small fixes to nodes:Sergey Sharybin
- Code formation fix in keying node - Fixed crash when creating keying screen for frame where there's no movie - Attempt to improve keying node to handle alpha on hair better
2012-05-29Initial commit of new keying nodesSergey Sharybin
First node is called Keying Screen (Add -> Matte -> Keying Screen) and it's aimed to resolve issues with gradients on green screens by producing image with gradient which is later used as an input for screen color in keying nodes. This node gets motion tracks from given movie clip and trackign object and uses them to define color and position of points of gradient: for position marker's position on current frame is sued, for color average color of pattern area is used. Gradient is calculating in the following way: - On first step voronoi diagram is creating for given tracks. - On second step triangulation of this diagram happens by connecting sites to edges which defines area this site belongs to. - On third step gradient filling of this triangles happens. One of triangle vertices is colored with average track color, two rest vertoces are colored with average color between two neighbor sites. Current pixel's color in triangle is calculating as linear combination of vertices colors and barycentric coordinates of this pixel. This node is implemented for both tile and legacy compositor systems. Second node is basically a combination of several existing nodes to make keying more straighforward and reduce spagetti mess in the compositor, but it also ships some fresh approaches calculating matte which seems to be working better for not actually green screens. This node supports: - Chroma preblur - Dispilling - Clip white/black - Dilate/Erode - Matte post blur This node doesn't support chroma pre-blur for legacy compositor (yet). There're still lots of stuff to be improved here, but this nodes night already be used i think. Some details might be found on this wiki page: http://wiki.blender.org/index.php/User:Nazg-gul/Keying This patch also contains some currently unused code from color math module, but it was used for tests and might be used for tests in the future. Think it's ok to have it in branch at least.