Commit Graph

461 Commits

Author SHA1 Message Date
edd11c0829 Fix #32628: Crash when selecting Channels of the image to draw icon - Compositor
Own regressions since color management merge commit.
2012-09-23 14:47:48 +00:00
8771c9e2fe code cleanup: use frame as a prefix for rna properties 2012-09-20 12:16:00 +00:00
8e93f017ac do_version fix files with bad keyblock uid caused by byg [#31569] 2012-09-18 14:40:02 +00:00
86a72ae064 fix for node socket text buttons not scaling with DPI, also quiet -Wundef warning WITH_DDS. 2012-09-16 23:24:26 +00:00
b1d1355f30 Fix drawing of output slots with utf-8 names. Also always show last letters in already clipped output slots names 2012-09-16 19:06:17 +00:00
232571c61a code cleanup: replace macro for BLI_rect size/center with inline functions. 2012-09-15 11:48:20 +00:00
a73dd3476e Color Management, Stage 2: Switch color pipeline to use OpenColorIO
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-09-15 10:05:07 +00:00
e75f5c8208 quiet -Wmissing-prototypes warnings, and enable this warning by default for C with gcc.
helps for finding unused functions and making functions static, also did some minor code cleanup.
2012-09-15 01:52:28 +00:00
f6c7a69565 code cleanup: correct misleading use of LABEL button type. 2012-09-14 05:44:47 +00:00
319831d7b8 code cleanup: use an enum for uiBut->pointype (more useful debug display of members),
and rename COL -> COLOR --- less confusing since the layout engine has row/col's.
2012-09-11 23:10:23 +00:00
a9f10b6bc2 style cleanup 2012-09-08 06:40:03 +00:00
306e2b4878 stule cleanup 2012-09-04 18:47:08 +00:00
adea12cb01 Cycles: merge of changes from tomato branch.
Regular rendering now works tiled, and supports save buffers to save memory
during render and cache render results.

Brick texture node by Thomas.
http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Nodes/Textures#Brick_Texture

Image texture Blended Box Mapping.
http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Nodes/Textures#Image_Texture
http://mango.blender.org/production/blended_box/

Various bug fixes by Sergey and Campbell.
* Fix for reading freed memory in some node setups.
* Fix incorrect memory read when synchronizing mesh motion.
* Fix crash appearing when direct light usage is different on different layers.
* Fix for vector pass gives wrong result in some circumstances.
* Fix for wrong resolution used for rendering Render Layer node.
* Option to cancel rendering when doing initial synchronization.
* No more texture limit when using CPU render.
* Many fixes for new tiled rendering.
2012-09-04 13:29:07 +00:00
56b28635e7 code cleanup: rename BLI_in_rctf() --> BLI_rctf_isect_pt(), to conform with our naming convention. 2012-08-23 18:25:45 +00:00
1ab5a4f0ed despeckle composite node 2012-08-23 06:48:01 +00:00
1939baa47d style cleanup 2012-08-22 16:44:32 +00:00
77f47799dd code cleanup: use BLI_RCT_SIZE macro 2012-08-20 23:06:17 +00:00
26f073b327 macros for rectangle center and size 2012-08-20 15:29:02 +00:00
9591142294 add variable size option to bokeh blur node, remove f_stop option (it wasnt used), and add blur_max to the interface. 2012-08-14 14:31:39 +00:00
59fedc6b7c rename blur Reference to Variable Size, improve tooltip 2012-08-14 12:39:12 +00:00
Lukas Toenne
543cee14ca Renamed the mx/my coordinates in SpaceNode to more descriptive 'cursor'. This follows the naming in the View3D space, since this vector is used for essentially the same purpose (adding nodes at a specific location), although not used for any transform origin and not displayed in the editor.
Note: While renaming DNA properties is usually dangerous and can break files, in this case it is possible because the mx/my values are only used at runtime.
2012-08-08 17:37:02 +00:00
098cbdac62 fix for minor regression in own recent edits: sample line was drawing in newly created curve nodes (Hue correct). 2012-08-08 08:41:10 +00:00
Lukas Toenne
cfe7bab080 Fix for drawing arrows on node lines between two reroute nodes. This was a typo in r48762 which inverted the arrow scale. 2012-08-06 20:48:08 +00:00
2b8ac9bc61 inpaint node from tomato branch by Peter Schlaile
http://en.wikipedia.org/wiki/Inpainting
2012-08-06 13:45:11 +00:00
e592f757e8 fix for crash when moving frames about in the node space, was possible to move a node into its own child frame (causing recursive parent loop).
also some minor code cleanup.
2012-08-05 20:40:26 +00:00
887d517e3b use define for 0.375 = GLA_PIXEL_OFS, used all over the interface.
also use M_SQRT1_2 in math_rotation.c
2012-08-05 17:27:52 +00:00
97e9659c53 style cleanup 2012-08-04 12:54:27 +00:00
6374e3b49d DO not draw active outline for collapsed nodes when they're not selected
Also made corrections to currently unused code
2012-08-03 11:39:34 +00:00
db8c9c24f6 code cleanup: remove unused includes 2012-08-02 23:03:16 +00:00
179d00fb9c make node select_all consistent with other select operators, also add Ctrl+I, select inverse to node space. 2012-08-01 13:28:19 +00:00
6704f56c15 Do not highlight non-selected active node with active outline
This would match other areas in Blender.
2012-08-01 09:44:25 +00:00
7217927414 add inline functions for max/min ints, good to use when the arguments are function calls (we had a few of these). 2012-07-29 18:14:20 +00:00
c41e1e434a code cleanup: replace MIN2/MAX2 with minf/maxf 2012-07-29 16:59:51 +00:00
f230a94d49 Fix crash in drawing socket names when zooming out a lot
--
svn merge -r49291:49292 ^/branches/soc-2011-tomato
2012-07-27 13:49:55 +00:00
18e874798d Track input node: more control on over output value
Now supports output value of:

- Absolute marker position
- Marker position relative to the very first marker
- Marker position relative to given scene frame
2012-07-27 11:07:12 +00:00
b8d96bc011 mask motion blur shutter option 2012-07-27 10:20:36 +00:00
b10a35a9a9 motion blur for mask node:
TODO
- add shutter speed option
- add blur option
2012-07-27 09:32:47 +00:00
733edf8628 option to use manual size input for scene 2012-07-26 13:29:38 +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
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
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
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
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