Commit Graph

841 Commits

Author SHA1 Message Date
Lukas Toenne
f883337ba3 Fix #32118, Reroute nodes inside groups get created in wonky places.
Previous attempt was not taking into account parent nodes of the group nodes (i.e. frames). The nodeFromView function should be used to convert between relative node location to absolute view space. Also added this in the node_add_node helper function, which is used in a number of operators for adding nodes in a specific location.
2012-07-20 15:07:06 +00:00
a56f4fee38 Fix for
* [#32040] size-input of a blur-node is uniform for the whole picture
 * [#32062] Blur node Size input is not working with 
 * [#32140] Blur Node using a greyscale input as size multiplier fails
to work

Node now has a new option (new compositor cannot detect if the connected
part is a single value, or an image connected).

With this option the use of a reference image to multiply the size of
the blur per pixel can be enabled/disabled.

Regards, 
Jeroen
 - At Mind -
2012-07-19 11:05:18 +00:00
Lukas Toenne
2721a17a31 Fix #32118, Reroute nodes inside groups get created in wonky places. The operator needs to take into account the potential offset from the group node (most operators use the node_add_node helper function which does this). 2012-07-19 08:23:56 +00:00
29bc3d7024 fix for scons building with compositor 2012-07-17 10:38:22 +00:00
f9795b353e fix for building without the compositor 2012-07-17 10:19:47 +00:00
54bfdb9296 toggling node hide/sockets/options was triggering a re-render. 2012-07-16 16:16:05 +00:00
474b922472 fix: node background image move operator didn't take zoom into account when clamping pan bounds. 2012-07-15 11:33:13 +00:00
7cc5af4ef3 minor refactor for rect functions. more consistent naming. 2012-07-15 00:29:56 +00:00
e4cfcdc3a6 header comment cleanup, explain whats the difference between confusingly named drarnode.c and node_draw.c. 2012-07-14 15:29:45 +00:00
807ad1f0e0 Fix #32087: Crash while changing values in comp editor (bt and blender included)
Issue was caused by threading conflict between compositor output node which
is freeing buffers used by render result image and image draw code which
could use buffers at the same time as compositor frees this buffers.

Solved by adding adding  lock around viewer image invalidation and image
drawing.

Use renamed LOCK_PREVIEW mutex for this, which si not called LOCK_DRAW_IMAGE.
With new compositor locking for preview is not needed so it could be removed.

Added the same lock around viewer operation which also frees buffers used
by viewer image. It's actually quite difficult to check whether this is
indeed needed. This code seems to be using acquire/release technique, but
somehow acquiring ImBuf before invalidating it in compositor operation
doesn't resolve the issue, so probably it's not actually locking acquire
and things should be checked deeper.
2012-07-13 13:47:13 +00:00
Lukas Toenne
18d7a23166 Fix #32051, Ungroup operator crashes. The link iterator can be invalidated when unconnected input links are removed. 2012-07-12 15:14:50 +00:00
9c464ee2bb improved node frame text alignment and use default label font (not monospaced) 2012-07-10 20:44:25 +00:00
ba8154e24a Keying screen: small fixes and improvements from tomato
- 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-07-10 14:53:36 +00:00
1360147e9e Tag ununsed variable and make function real explicit prototype. 2012-07-10 12:42:03 +00:00
dc65a26bf6 refactor node highlight code. New implementation will not write to
uninitialized memory. it happened when you delete a node that was being
executed. in the compostor
2012-07-10 12:23:49 +00:00
5cc0e5f751 Mango request: added an input node to use track's position in compositor
--
svn merge -r48088:48089 -r48091:48092 ^/branches/soc-2011-tomato
2012-07-10 11:01:25 +00:00
5b57f38fb5 Mango request: option to clamp result of Mix RGB and Color Math nodes
---
Merging r48792 from soc-2011-tomato into trunk
2012-07-10 10:36:18 +00:00
a158cb4e69 Mango request: disable compositing on file load.
This does not make much sense and just annoys in most of cases.

---
Merging r48793 from soc-2011-tomato into trunk
2012-07-10 10:31:05 +00:00
Lukas Toenne
80867d76e5 Fix #32052, Conflicts in unique node names.
All node group operators which move nodes directly between bNodeTree->nodes lists now make sure the node names are indeed unique in their new environment (the node group tree or the parent tree).
2012-07-10 09:31:08 +00:00
6b75a99c01 Tomato mango request: do not start compositing on file load 2012-07-10 09:12:39 +00:00
717ac64cb1 Tomato: added option to clamp result of Mix RGB and Color Math nodes 2012-07-10 09:12:33 +00:00
565f10a541 center node group text button vertically 2012-07-09 23:23:47 +00:00
0b1d5d42cf style cleanup: line length, also comment some unused code 2012-07-09 23:07:15 +00:00
954d2a9b31 style cleanup: missed previous commit 2012-07-09 20:37:09 +00:00
62df28a325 style cleanup: node drawing 2012-07-09 19:58:36 +00:00
e66a02e7e2 improve node text alignment with different zoom levels 2012-07-09 19:50:43 +00:00
6665cf4cde code cleanup: remove pointless casts (int -> short -> int) 2012-07-09 17:05:47 +00:00
a1d5261951 fix node drawing glitch where text alignment for output sockets would move the text X axis twice as much as it should have. 2012-07-09 16:51:08 +00:00
80fa54ab3c correction to last commit. aspect doesn't need to be calculated every time. 2012-07-09 16:26:01 +00:00
54ed3dee68 fix for ugly pixelated drawing of node frame text. 2012-07-09 16:06:44 +00:00
ec233cd747 svn merge ^/trunk/blender -r48674:48681 2012-07-06 14:25:49 +00:00
d1c335ad79 Tomato keying screen: small fixes and improvements
- 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.
2012-07-06 12:59:00 +00:00
27da686aec use icons for rgb colors 2012-07-06 11:24:43 +00:00
cf369c5e13 svn merge ^/trunk/blender -r48658:48674 2012-07-06 09:24:47 +00:00
3b559c8cc8 rgb color display options for compo backdrop. 2012-07-06 09:22:59 +00:00
48d0d32f73 svn merge ^/trunk/blender -r48585:48604 2012-07-04 17:55:30 +00:00
558721ab59 More spell checking. 2012-07-04 15:04:38 +00:00
fbc24a61c4 svn merge ^/trunk/blender -r48576:48585 2012-07-04 11:53:48 +00:00
33e12a2983 Highlight nodes that are being processed 2012-07-04 10:01:45 +00:00
17d7a9c3d9 Merging r48545 through r48574 from trunk into soc-2011-tomato 2012-07-04 07:33:34 +00:00
bc78942be0 Also fix Anim Player button for node editor 2012-07-03 16:04:26 +00:00
1fb0ecb9bb svn merge ^/trunk/blender -r48527:48537 2012-07-03 14:05:18 +00:00
42aaa47e9b dont display image sequences outside the frame range in the 3D viewport. 2012-07-03 14:04:39 +00:00
259e78997a svn merge ^/trunk/blender -r48489:48527 2012-07-03 11:03:39 +00:00
896fb9fda7 Color management refactor
- Move color management display settings into own structure like it's
  done for view settings.

  This is helpful from two sides:

  * It is planned to support display calibration settings which
    should be taken into account by color management stuff to
    add needed transformations to OCIO processor.
  * File saving should be able to make the same display
    transformations as it's done by window when displaying the image.
    Having own DNA and RNA structures for display device settings
    helps avoiding having duplicated code.

- Small refactor of cacheing functions which are now accepts
  cache-like versions of view and display settings. This structures
  used for cache are quite the same as DNA structures but they contains
  indices of view and display which avoids extra lookup for this
  things.

  This also helps having reasonable amount of variables passing
  to cache functions.
2012-07-02 16:37:40 +00:00
Lukas Toenne
33ae33bd10 Fix for image texture node in cycles. The button draw function has to use the image user pointer directly for property buttons, unlike the compositor image node which redefines image user properties on the node itself to ensure proper updates. 2012-07-02 16:27:09 +00:00
5a803b7edf svn merge ^/trunk/blender -r48415:48469 2012-07-01 15:39:02 +00:00
1597ad9377 style cleanup 2012-07-01 09:54:44 +00:00
6bfe9266be Color management cleanup and improvements
- De-duplicate code used by color management panel drawing,
  moved this panel to utility file in bl_ui

- Added support of per-window color management control
  which means view transform. exposure and gamma could be
  set per window and all spaces would use this settings.

  This is default behavior for older files now.

- Added support of color management display of movie clips
  in clip editor.

  Supported both texture buffer and fallback draw methods.

- Fixed default values for exposure and gamma
2012-06-30 12:37:41 +00:00
b57a5521c4 Color management refactoiring and some extra options
- Move space-being settings (such as view transform) into own
  DNA and RNA structure to avoid code duplication in some areas
  and save some arguments on display buffer acquiring function.

  Also added some utility functions to BKE to manipulate this
  settings.

- Replace static sized color managed buffer flags array with
  dynamically sized array which matches actual number of displays.

  Probably this flags better be transfposed so it'll support
  any number of view transforms and 32 displays (currently it's
  other way around). it's runtime flags only, so would be simple
  to change any time.

- Added support of configurable exposure and gamma.

  Changing this settings wouldn't generate new item in cache,
  it'll affect on buffer with the same color spaces conversion.

  It'll also run full color transform from scratch on every run,
  this could be changes in a way that it'll re-use color managed
  buffer, but from quick glance it doesn't give really noticeable
  boost.

  Currently this settings are stored as pointer in ImBuf structure
  itself. Probably it make sense removing them from ImBuf and make
  moviecache be able to store some kind of tags associated with
  cached ImBuf.
2012-06-30 12:37:16 +00:00