Commit Graph

372 Commits

Author SHA1 Message Date
8b7482892b made most variables which are only used in a single file and not defined in header static for blenlib, blenkernel and editors. 2011-02-14 17:55:27 +00:00
4124804b4e many functions in blender are not marked static but should be.
most local modifier,GPU,ImBuf and Interface functions are now static.

also fixed an error were the fluid modifier definition and the header didnt have the same number of args.
2011-02-13 14:16:36 +00:00
Lukas Toenne
69e72ea427 Removed the internal_select parameter from ntreeCopyTree. This was used just in one place when duplicating nodes, which is not an actual copying of the tree. The node duplicate operator now copies selected nodes itself. 2011-02-11 09:37:58 +00:00
Lukas Toenne
46bb5643b7 Different method for blur node aspect correction. Now the user can still set different sizes for x/y blurring in relative mode, but choose to use aspect correction on either of the axes. 2011-02-10 20:54:02 +00:00
Lukas Toenne
cbe53cc48d More options for the blur node filter size. This can now be pixel based or relative to both axes or just either width or height. 2011-02-10 18:54:49 +00:00
763e8d0bec Bugfix [#26004] compositor: backdrop zoom factor too small
The backdrop zoom factor for new node-editor instances was not set
(i.e. was default initialised to 0). Now, this gets set to 1.0.

Also, set the property default in RNA to match this.
2011-02-10 10:24:05 +00:00
Lukas Toenne
24db3d17aa Per-type node labels and customizable names. The label displayed in the node header is now by default the node type string. A custom label callback can be implemented to display more detailed information. This is currently used by group nodes, which display their internal tree name, and math, vector math, mix and filter nodes, which use their internal operation sub-type. Also the node tree selection/naming box for groups is now displayed only on open groups, to make it clearer that this is the internal type of the group and get a cleaner main tree. 2011-02-08 12:54:32 +00:00
c8be8a7c6d Bugfix 25965
New "auto render" now prevents calling anim-updates, that's
not needed (and popped back transformed keyed objects).
2011-02-07 18:09:27 +00:00
5c421c328e Todo/feature request
When using masks or other simple 3D elements in composites, doing
a layer re-rendering on a node is a bit clumsy all the time.

This commit does two things to help:
- new hotkey "Z" in node editor automatically finds render layer
  that changed and re-renders it + composites
- option "Auto Render" does same, but then after every transform
  edit in 3D window

The latter is experimental; real & proper system for this requires
full threaded render support (like previews). But it works!

Demo file:
http://download.blender.org/demo/test/auto_composite.blend

Important fix:
After any render, all the render layers were tagged "changed", which
caused any edit to first totally recomposte everthing. Now it only
composites changes.

Implementation notes

- DAG scene flush now sets 'changed' flags in render layer nodes
- Added notifier for 'transform finished' to trigger the update,
  this is temporarily.
2011-02-07 16:41:57 +00:00
14ef1e2d96 Keymap conflict in node editor. Read Render Layers is now Ctrl R to
leave R for rotate
2011-02-02 10:26:14 +00:00
Lukas Toenne
31b78fd72e Removed OpenGL blending from node editor backdrop images in alpha channel mode. This is a pure b/w image that doesn't need blending. 2011-01-31 16:34:56 +00:00
05034fb91f Node UI:
* Added Backdrop Panel inside the "Properties" area.
* Hard limit for the "zoom" value. Negative values doesn't make sense. 
* Added a missing notifier for the Node backdrop move operator.
2011-01-31 16:16:15 +00:00
Lukas Toenne
fefe3daf24 Small fix for color info in node editor: ACTIONMOUSE click was already used for node moving. Now ALT+ACTIONMOUSE must be used to get color info from the backdrop image. 2011-01-31 15:18:30 +00:00
1393523d41 Scons blenfont include for recent Node Backdrop commit. 2011-01-31 14:48:17 +00:00
Lukas Toenne
56962346be Added backdrop image color information to the node editor. When clicking on empty space in the node editor, the pixel color values will be displayed on the bottom like in image editor. 2011-01-31 14:42:55 +00:00
Lukas Toenne
7215e5085e Changed alpha blending mode for image editor and node previews. This was using the sum of the image and alpha-faded background, leading to almost-white transparent areas. New code uses correct GL_SRC_ALPHA for the source image. 2011-01-31 11:57:37 +00:00
Lukas Toenne
48fc6f5698 Added transparency feature to node editor backdrop, similar to image editor. Alpha blending can be enabled by a button when "Use Backdrop" is selected. 2011-01-31 11:17:50 +00:00
89c617a116 remove nan-makefiles 2011-01-30 15:29:22 +00:00
76940e6f5c - Bugfix: NLA "duplicate" operator now lets strips get moved between
tracks too, instead of only sliding around on the track they were
defined on.
- Adding description fields for many (older) operators that lacked
them
2011-01-20 22:22:16 +00:00
Lukas Toenne
121f428097 Added group verification after autoconnect to avoid linked+external group sockets. 2011-01-18 14:49:06 +00:00
d591ab5355 Bugfix 25683
Compositor operators now have better poll check, so they won't
show up in operator search or hotkeys for other node views.

- backimage move, size
- read renderlayers
2011-01-17 18:38:44 +00:00
84a464ab62 several cosmetic changes to the node-editor
+ changed lines connecting nodes:
   they now use a linewidth of 1.5px for the light foreground and 4px for the dark background.
   this should fix node-lines not being visible on almost black or all white backdrops.
+ muted nodes now also show a red tinted header if they are hidden (collapsed)
+ both active and selected nodes show a (now properly antialiased) highlighting frame
+ fixed a small error in dropshadow code resulting in a gap at borders
+ fixed a tiny error for the collapsing indicators (triangles) - they were not symmetrical.

Ton will add proper theme colors for the node-editor in the coming days.
2011-01-09 18:59:35 +00:00
17e733a4fc Bugfix #25525
Duplicating viewer node crashed in cases; bad ID was given to a function.
Fix provided by Alexander Kuznetsov. Thanks!
2011-01-08 19:12:42 +00:00
8f21a43535 split BKE_utildefines.h, now it only has blender specific defines like GS() MAKE_ID, FILE_MAXDIR, moved the generic defines to BLI_utildefines.h.
no functional changes.
2011-01-07 18:36:47 +00:00
90a4e6a93d Don't commit with compiling first ;) 2011-01-04 16:39:05 +00:00
51a3d123e1 Todo item: notifiers sent from Material changes invoked Compositor
jobs. Now proper checks have been added, also for texture nodes.
2011-01-04 16:31:36 +00:00
9676902006 Todo items:
- New Node editor now opens with larger view, the default
  was like zoomed in factor 2.
- Add node via menu now shows new node more visible
- Click on (material) node now doesn't re-render the entire
  tree anymore, much nicer.
- Duplicate node creates preview image immediate
2011-01-03 14:36:44 +00:00
3c96b00500 Bugreport, IRC
Compositor: "Read & Compo Full Sample Buffers" option stopped after
1 pass; the break callback was returning '1' falsely.

Also made it show "wait cursor" again, since it doesn't run in 
thread nor updates UI while compositing buffers. Check console for
progress for now.
2010-12-28 10:39:27 +00:00
b72bffd70c Bug report #25384
Node editor
Some nodes - when muted - didn't draw a red line to indicate
a pass-on action. Stil, the node then is muted and either passes
on a buffer of same type, or just black.

To more clearly indicate muting, it now draws the header in a 
reddish blended color too.
2010-12-27 09:43:22 +00:00
86b89af5dd use ICON_NULL define rather then 0, makes UI calls less confusing. (no functional change)
eg: uiItemR(row, &dvar_ptr, "type", 0, "", 0); -> uiItemR(row, &dvar_ptr, "type", 0, "", ICON_NULL);
2010-12-23 02:43:40 +00:00
5e382eb8e5 rename blenderlib to blender_add_lib 2010-12-22 23:09:30 +00:00
fae8dc5a73 Error/Warning report flipping.
An operator Error throws up a menu, a Warning only a flashy header print.
In mesh editmode the menus for simple failures got very annoying, like
"Already a face" for Fkey on a face.

Proposal is to use warning for contextual failures, like:
- wrong selection
- unsupported combination
- wrong modes

And use errors for cases you really need user attention, for example when
issues are invisble or potentially damaging work.
- Memory failures
- Files not found

List can grow in future :) let's test this for mesh now.
I'll tackle this for other ops later after review.

(Also changed: loopcut disabled when editmode shows deformed result)
2010-12-21 15:10:09 +00:00
97197b54cf Bugfix #25309
Code cleanup to allow switching active output nodes in Compositor
made shader nodes output not set correctly.

Now you can have multiple output nodes in shaders too, and switch
on click-activate.
2010-12-20 11:08:29 +00:00
b5e30e58e1 Todo item:
Compositor: if you have multiple Composite-Out nodes, a click will
activate it for use. Just like viewer nodes.
2010-12-19 15:03:27 +00:00
bfe5ae9ff1 Compositor: Add an option to select the YCbCR conversion mode for the YCbCR combine/separate nodes. 2010-12-13 21:17:00 +00:00
b6c68777ad A little more work on patch [#24814] Operators which have no decription
submitted by Murat Egretli

Not actually a patch but talks about descriptions that are missing
and some small fixes that are needed.

Kent
2010-12-09 16:50:32 +00:00
e0ab0bc401 Added a few descriptions that were missing.
This is a little bit of todo item:
[#24814] Operators which have no decription

Kent
2010-12-08 21:56:50 +00:00
afacd18498 use lowercase for cmake builtin names and macros, remove contents in else() and endif() which is no longer needed. 2010-12-08 08:43:06 +00:00
6c32bffab0 Bugfix #24163a: Unable to animate INSIDE a group node in the compositor
(This commit doesn't fix the original bug reported in the report, but does fix one that was discovered while investigating that one) 

Trying to insert keyframes for nodes within group nodes was failing. 

This was caused by the ID-block for those UI widgets being set to the Node Editor's current ID-block (i.e. NodeTree) vs the NodeTree that those nodes lived in. The net result was that the paths couldn't be resolved, as the paths obtained for those widgets could only work up to the group's nodetree.
2010-12-07 11:03:53 +00:00
b110c7c8f2 Dependency graph: changed DAG_id_flush_update to DAG_id_tag_update. Now it
only tags the ID and does the actual flush/update delayed, before the next
redraw. For objects the update was already delayed, just flushing wasn't
yet.

This should help performance in python and animation editors, by making 
calls to RNA property update quicker. Still need to add calls in a few
places where this was previously avoided due to bad performance.
2010-12-05 18:59:23 +00:00
263830f000 Enabled GCC -Wwrite-strings warning for CMake and replaced many 'char's for 'const char's,.
Only one functional change where Transform orientations passed "" to BIF_createTransformOrientation() which could then have the value written into.
2010-12-03 17:05:21 +00:00
cfc1b133f6 updates to patch from Dan Eicher, allow adding a NodeGroup through bpy.data.node_groups.new(name, type)
made some minor changes.
2010-12-03 03:44:39 +00:00
b45c3363fd fix for some pedantic warnings. 2010-12-03 01:52:28 +00:00
fd7728883a increase the reference counts when setting default scene compo nodes else removing them can set the user count < 0. 2010-12-01 08:49:08 +00:00
e8397e6193 include headers in cmake source, added a script to check for consistency, reporting missing headers & C files.
this is important so IDE's using CMake integration always get blender headers. - QtCreator & MSVC for eg, probably others too.
2010-11-29 04:35:56 +00:00
cd2ab75b73 - include pthreads for win32 globally (as with opengl).
- MSVC CFLAGS were being set by only checking WIN32, (breaking non-msvc win32 builds)
2010-11-21 09:10:50 +00:00
0b23f03503 Bugfix #24335
ZCombine node in compositor ignored alpha values. Enabling it
would break compatibility though, so it's a tickbox option now.

Patch provided by reporter, Martin Lubich. Thanks!
2010-11-12 14:59:01 +00:00
066a1d30bb Fix #24556: N Panel in Compositor doesn't work with Vector Normal node. 2010-11-06 17:55:43 +00:00
e179c92a27 tedious string copying changes
- use sizeof() in more places.
- fixed some off by 1 bugs copying strings. setting curve font family for instance was 1 char too short.
- replace strncpy and strcpy with BLI_strncpy
2010-11-05 07:35:21 +00:00
57fd35ae26 A few texture node properties still had old rna names in draw code. 2010-11-03 15:30:24 +00:00