Commit Graph

77 Commits

Author SHA1 Message Date
Campbell Barton
83a2a4e5b8 Improvements to Blenders color balance (lift/gamma/gain).
Fairly closely match some mac application colin has called 'Looks', to give better results.
- lift is now applied non linear (was being added to the color)
- change the color wheel to preserve the luminance of the gamma and gain values, this stops the color from being set too dark (option for the color wheel template).
- sub-pixel precission for the color wheel since the white area at the center can make a lot of difference with a very small change.

This change will make existing node and sequencer setups lift render slighly differently however discussed this with Ton and he's ok with it.
2010-07-04 20:59:10 +00:00
Campbell Barton
9cbbc9d3af rename some rna properties filename --> filepath
* filename == "foo.ext"
 * filepath == "/path/to/and/including/foo.ext"

this was alredy followed in some places not not everywhere.
2010-06-02 17:58:28 +00:00
Brecht Van Lommel
9a85013692 Merge various small changes from render branch:
* Division by zero fix for TNT SVD code.
* Sound fix, in case ffmpeg decode fails, don't use the samples.
* Fix for incorrect bounds of transformed objects in new raytracing code.
* Gave memory arena's a name used for allocations for easier memory
  usage debugging.
* Dupligroup no_draw option was using layers but not restrict view/render
  setting. (not a bugfix exactly but would do display list context switching
  while drawing for no reason).
* Fix objects instanced on hair particles not giving consistent results
  when the object is transformed.
* New math functions: madd_v4_v4fl, len_squared_v3v3, interp_v4_v4v4v4,
  mul_v4_m4v4, SH and form factor functions, box_minmax_bounds_m4.
* mul_m4_m4m4 and mul_m3_m3m3 now accept the same pointers for multiple
  arguments.
* endjob callback for WM jobs system.
* Geometry node uv/color layer now has search list/autocomplete.
* Various small buildsystem tweaks, not strictly needed yet in trunk.
2010-04-15 10:28:32 +00:00
Ton Roosendaal
42db34b126 three things:
- ALT+Scrollwheel zooms backdrop in node editor
- Blender -d debug print will also print every event except mouse moves
  (needed to debug WM, some events are catched by OS)
- Changed order of keymaps... the default maps now are evaluated *after*
  the own custom maps, so you can make overrides or defaults.
2010-04-08 16:36:50 +00:00
Campbell Barton
9105f6f0bd rna naming, *_frame --> frame_* 2010-04-01 21:44:56 +00:00
Brecht Van Lommel
f46cccedf6 rna/py-api fix.
C functions and python used different argument order, this relied on mapping non-keyword arguments to 'REQUIRED' arguments but meant that you could not have an optional, non-keyword argument.

next commit will make order of arguments consistant (currently only changed order that rna wrapped).
(commit 27674 and 27683 by Campbell from render25 branch)
2010-03-23 15:31:12 +00:00
Brecht Van Lommel
cb6d2685bd rna/py-api fix.
C functions and python used different argument order, this relied on mapping non-keyword arguments to 'REQUIRED' arguments but meant that you could not have an optional, non-keyword argument.

next commit will make order of arguments consistant (currently only changed order that rna wrapped).
(commit 27674 by Campbell from render25 branch)
2010-03-23 15:25:33 +00:00
Campbell Barton
f743b583bf more lint includes
Only source/blender/editors/ dir, should not give errors on different platforms
Only removing:  UI_*.h, ED_*.h, WM_*.h, DNA_*.h, IMB_*.h, RNA_*.h, PIL_*.h
2010-03-23 14:09:09 +00:00
Campbell Barton
1e9bf0cfdb spaces -> tabs, (4 spaces == 1 tab, only for white space preceding text) 2010-03-22 09:30:00 +00:00
Robert Holcomb
ebd63787e6 added different sampling methods in rotate node
fixed bug in difference matte node that prevented using a solid color for second input
	-also clairified some variable names to be more meaningful
2010-03-15 22:36:39 +00:00
Robert Holcomb
dfb59dbaa5 added method to change algorithm used in channel matte node. Limit a channel by another channel or limit by max of remaining channels. 2010-03-13 14:47:26 +00:00
Robert Holcomb
85066b5e05 updated despill node to incorperate changes from Xavier Thomas's patch #18012 2010-03-12 18:47:35 +00:00
Campbell Barton
d0e0f6dea3 move render operators into their own files, render_internal.c & render_opengl.c, rather then have them in the screen module.
also rename render operators SCREEN_OT_ --> RENDER_OT_
2010-03-08 16:36:53 +00:00
Campbell Barton
081c1205a3 correct fsf address 2010-02-12 13:34:04 +00:00
Brecht Van Lommel
81cd4edfb6 Fix #20891: opengl animation render could mess up the view.
The problem was that wmPushMatrix/wmOrtho/.. and similar functions did not
work well for offscreen rendering. It would have been possible to make a
fake subwindow for this, but I decided to just remove this extra layer as
it does not seem to have much purpose and has been quite confusing when
trying to fix other bugs. The relevant matrices are already stored in
RegionView3D so there will be no increase in calls to glGetFloat, which may
have been a performance reason to use this system in the past.
2010-02-01 15:32:55 +00:00
Matt Ebb
0bb36e9ced Fixes to Color Balance node:
* The Lift/Gamma/Gain formula previously was incorrect, fixed this and 
removed conversions - now the RNA values are the same as what goes into 
the formula.
* Because of this, added the ability for the Value slider to map to a wider range 
than 0.0-1.0. The black/white gradient remains the same, in this case just 
indicating darker/brighter rather than absolute colour values. Also added ability 
for color wheels to be locked at full brightness (useful for this case, where the 
color value itself is dark).
* Added an alternate formula - offset/power/slope (asc-cdl). This fits the standard 
Color Decision List formula, here for compatibility with other systems, though 
default Lift/Gamma/Gain is easier to use and gives nicer results.
2010-01-27 00:22:29 +00:00
Matt Ebb
e74bc901d3 Fix [#20749] Mute doesnt refresh the compositor 2010-01-21 01:42:28 +00:00
Matt Ebb
3e1783c715 New Compositor node: Hue Control
Was very quick to do, now re-aquainted with node editor.

http://mke3.net/blender/devel/2.5/hue_correct_node.jpg

Todo: modes for affecting hue and value on the vertical axis as well as just saturation - or if an enterprising coder wants to give it a go, let me know and 
I can help :)
2010-01-21 00:00:45 +00:00
Matt Ebb
1d3186cbcf Durian request: Added 'Color Balance' node to compositor. uses Lift/Gamma/Gain
similar to sequence editor.

--> http://mke3.net/blender/devel/2.5/color_balance_node.jpg

Also added 0 key (zero key) shortcut when mouse is over a button, to reset it to its default value.
Same as the RMB menu ->Reset to Default, except for color wheels, it only resets the hue/sat/value
components that that widget affects.

Peter/Xavier: The existing color balance code can generate NaNs (fractional power of a negative),
which causes havoc along the image pipeline. I added a check in the node code to prevent this.

Still plenty of potential for lots of better colour correction tools in the compositor, just needs time...
2010-01-20 04:19:55 +00:00
Matt Ebb
7df44b9ced Fix: wasn't able to rename node group nodetree name, or access the nodetree at all. Now you
can switch between them too.

Wrapped group nodes in RNA as part of this.
2010-01-13 06:35:12 +00:00
Matt Ebb
04dec46c6a Color management fixes
Now it's a bit more robust, tagging images with profiles when they're loaded, 
which then get interpreted later on by conversion functions. Just Linear RGB 
and sRGB profiles at the moment, same as before.

This commit fixes Martin's problem with EXRs and Multilayer images loading/
saving too dark, and it also makes the sequence editor work correctly with it too.

Also fixes:
[#19647] gamma correction with color management is reset when resetting Curve
[#19454] 2.5: Dither does not work when Color management is enabled
2010-01-09 00:16:35 +00:00
Matt Ebb
320a09c232 * Use color wheel template for RGB node 2010-01-07 22:42:59 +00:00
Matt Ebb
06e6011ae9 Restored Compositor 're-render single layer' functionality (buttons on renderlayer comp nodes).
This works with operator properties - if you pass the name of a scene and renderlayer to 
the screen.render operator, it will render that layer as a single layer re-render.
2010-01-06 00:09:07 +00:00
Brecht Van Lommel
29f90af19c Fix: curve reset for brushes now gives proper smooth curve as default,
also moved brush curve presets code into curvemapping code.
2010-01-04 17:28:37 +00:00
Matt Ebb
f9ee03f1b1 Got rid of some dead code 2009-12-28 05:14:32 +00:00
Thomas Dinges
9d2293c464 2.5 Nodes:
* Wrapped Texture Nodes: "Blend", "Marble", "Wood", "Clouds", and "Distorted Noise", to use Texture RNA properties.
* Texture RNA properties used in these Nodes, now send an ND_NODE notifier, in addition to the general NC_TEXTURE.
2009-12-05 21:14:31 +00:00
Thomas Dinges
2a6d535d23 Fixed a part of [#20197] dof node bugs.
* False greying out.
2009-12-02 18:35:44 +00:00
Matt Ebb
525fbb22d2 * Fix for texture->image node not working
+ a few cleanups
2009-11-19 04:50:00 +00:00
Matt Ebb
7206437c72 node warning fixes 2009-11-11 06:01:42 +00:00
Matt Ebb
f0fc007c4b Wrapped node input and output sockets in RNA.
This allows you to set and animate the values of socket inputs and outputs, for example the value node.
It's also a step on the way to manipulating node trees via python (i.e. linking node sockets to each other).

This fixes [#19841] RGB Node in compositor not working
2009-11-11 02:15:09 +00:00
Brecht Van Lommel
37e4a311b0 Math Lib
* Convert all code to use new functions.
* Branch maintainers may want to skip this commit, and run this
  conversion script instead, if they use a lot of math functions
  in new code:
  http://www.pasteall.org/9052/python
2009-11-10 20:43:45 +00:00
Matt Ebb
bc006655ba * Finished (well, almost ;) RNA wrapping and layout-engine-ing all the nodes.
Still a few quirks, including redraw issues on multilayer image input nodes, but it's pretty much there.
Would also be good to wrap the input/output sockets, too, will check on it.

This fixes bug [#19740] INPUT NODE: Cannot load images / motion pictures
2009-11-10 04:01:44 +00:00
Campbell Barton
6e47d9bb9c - modal keymap for border select
- revert circle select keys adjustments & view navigation while selecting (durian guys liked but allowed activating multiple circle select's at once)
2009-11-06 22:51:08 +00:00
Thomas Dinges
c47a768af7 2.5 Nodes:
* Wrapped Math, Vector Math and Texture Node.
2009-10-30 19:31:44 +00:00
Thomas Dinges
3ff0032ec8 2.5 Nodes:
* Wraped Texture Nodes: Output and Bricks.
* Show Quality Slider (Composite > File Output) only for JPEG.
2009-10-28 22:14:31 +00:00
Thomas Dinges
cb1b2649f1 2.5 Nodes:
*Wrapped File Output Node. 
Note: Crashs on execution while rendering.
2009-10-27 21:54:29 +00:00
Thomas Dinges
b66046339b 2.5 Nodes:
* Added missing button set functions for Matte Nodes.
* Wrapped some Matte Nodes to new Layout Engine.
2009-10-27 13:46:02 +00:00
Joshua Leung
2344d62dfb Silencing some compiler warnings for mingw
* Unused functions
* Uninitialised vars
2009-10-21 10:56:31 +00:00
Brecht Van Lommel
be3da5dfff 3D View panels now show object and bone name again, not sure it
belongs here still, but this came up often, it avoids having to
switch tabs a lot when creating things.

Also renamed uiLayoutFreeBlock to uiLayoutAbsoluteBlock.
2009-10-09 10:45:11 +00:00
Brecht Van Lommel
fd511eb984 Node Bugfixes:
* Compo node backdrop works again.
* Compo node previews and backdrop now get correct color management
  float to byte conversion.
* Compo nodes got unecessarily recalculated while moving nodes.
* Fix compo node viewer nodes not getting activated correctly.
* Main compo node preview render computations are now outside of
  mutex lock, so better for multithreading.
* Tex node outputs did not work in some files loaded from 2.4.
* Change RNA updates to take into account groups that may be shared
  between multiple node trees.
2009-10-07 22:05:30 +00:00
Thomas Dinges
2fef3dbaa3 2.5 Layout Files:
* Some Code and Whitespace Cleanup.
2009-09-27 11:00:35 +00:00
William Reynish
128dba3329 Assorted tiny UI tweaks 2009-09-26 16:43:20 +00:00
Thomas Dinges
04ec0ea190 2.5 Nodes:
* Wrapped Color Key and Blur Node.
* Nodes using RNA properties can be animated. You can now choose if the Nodes Window should be updated while animation playback too. (Timeline>Playback Menu)
2009-09-21 16:21:54 +00:00
Thomas Dinges
7d86e92df9 2.5:
* Wrapped Invert, PremulKey Levels Node, Distance Key, Difference Key and Color Spill.
* Added RNA for Levels Node.
* Small RNA fixes.
2009-09-20 13:34:54 +00:00
Thomas Dinges
f7d8275ddb More Nodes wrapped to Layout Engine:
* Map Value, Alpha Over, Hue Saturation, Dilate/Erode
* RNA fixes and additions.
2009-09-19 19:57:30 +00:00
Thomas Dinges
6114de09b5 2.5 Nodes:
More Nodes are wrapped to the layout engine. +a bit code cleanup.

Brecht: please check on greying out, it doesn't look correct. :)
2009-09-18 21:04:54 +00:00
Thomas Dinges
a08b16436d 2.5: Adding a crop node caused crash, wrong layout deceleration was used. 2009-09-17 17:31:50 +00:00
William Reynish
613a034b45 -Added Loop Cut to toolbar
-Adjusted some UV Editor panels slightly
-Made a few nodes clearer. The Crop node was especially confusing.
2009-09-17 16:47:04 +00:00
Thomas Dinges
91e5ac872e Wrapped some more Nodes:
* Composite: Flip, Crop, Map UV, Lens Distortion.
2009-09-17 15:06:03 +00:00
Thomas Dinges
90d8088e53 2.5:
Test Commit, converted Filter Composite Node to use layout engine. :)
Will do other Nodes in the next few days.
2009-09-16 20:07:05 +00:00