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
2015-06-15Fix T45086: Crash showing scopesSergey Sharybin
Was a rounding issue, which was previously solved by quite simple check. Well, let's do the same check again :)
2015-06-15Fix integer division error with image scopesCampbell Barton
2015-06-12Cleanup: unused varCampbell Barton
2015-06-12Make scopes update multi-threadedSergey Sharybin
This commits makes scopes evaluation multithreaded by using OpenMP for the outer loop of pixel processor. it also makes all the changes needed for keeping performance as high as possible by keeping data local to thread for as long as it's possible. Reviewers: campbellbarton Differential Revision: https://developer.blender.org/D1334
2015-06-12Image scopes: Make sample line saving check localSergey Sharybin
Previously it was using accumulative counter of saved lines and so on in order to detect cases when new sample is to be saved. This is not quite possible to do with threaded scopes update. Change it now with non-accumulative approach which saves a bit different lines due to slightly different rounding, but this things are not strictly defined anyway and results are close enough to each other.
2015-06-12Image scopes: Make all variables local, prepare to threaded evaluateSergey Sharybin
Doing this as a separate commit so it's easier to troubleshoot in the future if some regression happens.
2015-06-10Fix T45013 negative curve falloff not working.Antony Riakiotakis
Was doing clamping as fix for T42984. Seems we can ommit clamping for sculpting if we make sure overlap is not zero with negative values. Control for clamping is moved to the "Use Clipping" function of curves (which is on by default), so both bugs remain squashed and advanced users can now properly utilize curves in sculpting, though not all brushes work well with negative curves.
2015-05-20Send color managed signal if input spaces changes during image savingSergey Sharybin
We're currently only supporting save to a default format color space, which makes it a bit tricky to prevent ImBuf from being changed. For until when saving to a custom colorspace works we'll just reload image if the space changes.
2015-03-17Part 2 of D1082 by Troy Sobotka, remove our functions that do lumaAntony Riakiotakis
calculations and use the OCIO one instead.
2014-11-29Cleanup: unused headersCampbell Barton
2014-09-24Cleanup: use float versions of functions when in/output are floatsCampbell Barton
2014-04-30Code cleanup: remove unused includesCampbell Barton
Opted to keep includes if they are used indirectly (even if removing is possible).
2014-04-26Code cleanup: use 'const' for arrays (blenkernel)Campbell Barton
2014-04-01Code cleanup: remove TRUE/FALSE & WITH_BOOL_COMPAT defineCampbell Barton
2014-02-14Fix T38606: C curve in the curve mapping compositing node not extrapolating ↵Brecht Van Lommel
correct. The "premultiply" optimization here did not take the extrapolation into account.
2014-02-03Code cleanup: use bools where possibleCampbell Barton
2014-01-04UI: Use bool rather then int/short's where possibleCampbell Barton
2013-10-07Fix #36981, Removing Sample line fails during render.Lukas Toenne
The SAMPLELINE flag in histogram was set during the BKE_histogram_update_sample_line function. That function in turn is called during every scope update in area draw function, meaning that during render it constantly gets set. OTOH the operator tries to disable the flag on invoke, which "cancels" the sample line by default. So during render the operator un-setting of the flag has no effect, because the render job immediatly triggers a redraw, which updates scopes and sets it again. Moved the flag out of the actual sample line update function into the operator execute. Now only the operator enables/disables overall sample line drawing, while the rest of the update works as before.
2013-09-12Better fix for #36688.Antony Riakiotakis
Throw a python error if user attempts to use CurveMap without calling CurveMapping.initialize() first. Added access to the initialize function to CurveMapping on RNA level. Thanks to Campbel for the help and remarks!
2013-09-09Attempt fix for #36688.Antony Riakiotakis
Curves may not be not initialized when called from python. C code explicilty says that curvemapping_initialize should be called prior to evaluating the curve, however the curve clip rectangle is not available when calling evaluation on the curvemap. This is not possible unless we force the evaluation on CurveMapping level, not on CurveMap level. For now just pass a rectangle with the x boundary values of the curvemap for evaluation to avoid the crash.
2013-09-09Some more fixes to missing look initializationSergey Sharybin
2013-09-09Film response curves implemented as a looksSergey Sharybin
This commit implement's OCIO's Looks idea which is about applying some color correction on the buffer before it get's affected by a display transform. This is mainly used to modify images in an artistics way. Currently we've got looks generated from film response curves for all sorts of cameras. Patch by both of me and Brecht.
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-06-24fix [#35855] Change "Scene" crashes randomlyCampbell Barton
2013-04-29fix for inserting a color-curve point.Campbell Barton
- was reading outside memory bounds checking the 'x' point. - inserting a point to the right of the last point would add a point to the very left instead.
2013-04-12Paint refactoring commit, non-disruptive (in theory :p)Antony Riakiotakis
* Fix precision overflow issue with overlay previews, * Expose alpha mask mapping to UI (still not functional but coming soon). * More overlay refactoring: Overlay now does minimal checking for texture refresh. Instead, we now have invalidation flags to set an aspect of the brush overlay as invalid. This is necessary because this way we will be able to separate and preview different brush attributes on the overlays, using different textures: These attributes/aspects are: Primary texture (main texture for sculpt, vertex, imapaint) Secondary texture (mask/alpha texture for imapaint) Cursor texture (cursor texture. It involves brush strength and curves) Modified the relevant RNA property update functions and C update callback functions to call the relevant cursor invalidation functions instead of checking every frame for multiple properties. Properties that affect this are: Image changes, if image is used by current brush, Texture slot changes, similarly Curve changes, Object mode change invalidates the cursor Paint tool change invalidates the cursor. These changes give slightly more invalidation cases than simply comparing the relevant properties each frame, but these do not occur in performance critical moments and it's a much more elegant system than adding more variables to check per frame each time we add something on the system.
2013-04-02More Histogram fixes:Ton Roosendaal
Sequencer histogram was calculating still badly, now it uses a per-color component counter to calculate the levels (instead of counter for all)
2013-04-02Removed leftover debug print.Ton Roosendaal
2013-04-02Usability fix, for color grading.Ton Roosendaal
The Scopes and Histogram (Image editor, Sequencer) were not updating on changes in color or display settings. - Missing notifiers for refreshing - Missing code to draw correct for managed byte buffers.
2013-03-09code cleanup: favor braces when blocks have mixed brace use.Campbell Barton
2013-01-12patch from Harley Acheson to remove multiple inline defines.Campbell Barton
2012-11-13disable applying constructive modifiers when in sculpt mode with multi-res ↵Campbell Barton
data, since this would crash. also rename modifier_sameTopology -> modifier_isSameTopology(), modifier_nonGeometrical -> modifier_isNonGeometrical()
2012-11-13Bugfix #33159Ton Roosendaal
Histogram in Blender was nearly useless - it just didnt work, showed confusing blank results. Two reasons for it: - It was including Alpha in the weighted total value (RGB images have alpha 255 for all pixels) - It was counting the a total weight value max(R, G, B, A), instead of using max(R) and max(G) etc. Now it all draws much nicer - similar to Da Gimp! :)
2012-11-02all remove functions now invalidate the RNA objects passed, to help script ↵Campbell Barton
authors to avoid bugs with accessing removed data.
2012-10-23rename api functions...Campbell Barton
- minf, maxf, mini, maxi --> min_ff, max_ff, min_ii, max_ii
2012-10-21style cleanup: trailing tabs & expand some non prefix tabs into spaces.Campbell Barton
2012-10-15Color Management: remove unused function and get rid of unneeded float->byte ↵Sergey Sharybin
conversion
2012-10-04style cleanup: comment blocksCampbell Barton
2012-09-15code cleanup: replace macro for BLI_rect size/center with inline functions.Campbell Barton
2012-09-15Color Management, Stage 2: Switch color pipeline to use OpenColorIOSergey Sharybin
Replace old color pipeline which was supporting linear/sRGB color spaces only with OpenColorIO-based pipeline. This introduces two configurable color spaces: - Input color space for images and movie clips. This space is used to convert images/movies from color space in which file is saved to Blender's linear space (for float images, byte images are not internally converted, only input space is stored for such images and used later). This setting could be found in image/clip data block settings. - Display color space which defines space in which particular display is working. This settings could be found in scene's Color Management panel. When render result is being displayed on the screen, apart from converting image to display space, some additional conversions could happen. This conversions are: - View, which defines tone curve applying before display transformation. These are different ways to view the image on the same display device. For example it could be used to emulate film view on sRGB display. - Exposure affects on image exposure before tone map is applied. - Gamma is post-display gamma correction, could be used to match particular display gamma. - RGB curves are user-defined curves which are applying before display transformation, could be used for different purposes. All this settings by default are only applying on render result and does not affect on other images. If some particular image needs to be affected by this transformation, "View as Render" setting of image data block should be set to truth. Movie clips are always affected by all display transformations. This commit also introduces configurable color space in which sequencer is working. This setting could be found in scene's Color Management panel and it should be used if such stuff as grading needs to be done in color space different from sRGB (i.e. when Film view on sRGB display is use, using VD16 space as sequencer's internal space would make grading working in space which is close to the space using for display). Some technical notes: - Image buffer's float buffer is now always in linear space, even if it was created from 16bit byte images. - Space of byte buffer is stored in image buffer's rect_colorspace property. - Profile of image buffer was removed since it's not longer meaningful. - OpenGL and GLSL is supposed to always work in sRGB space. It is possible to support other spaces, but it's quite large project which isn't so much important. - Legacy Color Management option disabled is emulated by using None display. It could have some regressions, but there's no clear way to avoid them. - If OpenColorIO is disabled on build time, it should make blender behaving in the same way as previous release with color management enabled. More details could be found at this page (more details would be added soon): http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.64/Color_Management -- Thanks to Xavier Thomas, Lukas Toene for initial work on OpenColorIO integration and to Brecht van Lommel for some further development and code/ usecase review!
2012-08-28fix for own crash caused by curve refactor, now curve tables are initialized ↵Campbell Barton
once when the tree is initialized. thanks to Antony Riakiotakis for providing a fix, though this works a little different.
2012-08-22code cleanup: use rect size macrosCampbell Barton
2012-08-21fix [#32374] Curve compositor UI drawing glitchCampbell Barton
copy the curve for the compositor.
2012-08-21change curve evaluation functions never to modify curve data (ensures thread ↵Campbell Barton
safety), now initializations has to be done outside evaluation.
2012-08-21Fix #32369: pixel glitch with compositor curves node, and some pixels havingBrecht Van Lommel
black point = white point. That's a degenerate case, clamped it now to 1e5, which is a bit arbitrary, but infinity would give NaN issues.
2012-08-21code cleanup: don't use magic numbers for curve flag & use bool args for ↵Campbell Barton
curvemapping_changed()
2012-08-21compositor color curve was MEM_dupallocN'ing the curve for every pixel ↵Campbell Barton
calculation (when there were black or white inputs on the curve node). avoid allocation by using local vars for black/white storage & curve calculation.
2012-08-19Sequencer: per-sequence modifier stack for color gradingSergey Sharybin
This implements basic color grading modifiers in sequencer, supporting color balance, RGB curves and HUE corrections. Implementation is close to object modifiers, some details are there: http://wiki.blender.org/index.php/User:Nazg-gul/SequencerModifiers Modifiers supports multi-threaded calculation, masks and instant parameter changes. Also added cache for pre-processed image buffers for current frame, so changing sequence properties does not require rendering of original sequence (like rendering scene, loading file from disk and so)
2012-07-29code cleanup: replace MIN2/MAX2 with minf/maxfCampbell Barton
2012-07-26image histogram/sample line couldn't show HDR colors. now allow zooming the ↵Campbell Barton
view to see colors up to 10.0