Commit Graph

7962 Commits

Author SHA1 Message Date
c42d0189e5 resolve glitch in the image space where mask editing and UVs would conflict.
now UV editing overrides mask.
2012-07-31 14:16:27 +00:00
8f6197bd08 support for curve orco uv's as UV's in cycles.
ideally these would be used as generated coordinates, but this is tricly because cycles calculates its own orco's and doesnt know about curve settings.
2012-07-31 13:43:26 +00:00
46ac23d04e Fix: "void" function returning value. 2012-07-30 12:33:28 +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
f608b3c444 code cleanup:
- building without python works again
- rename maxi/mini to i_max/i_min (so thay are available for function names)
- some minor edits to IK stretch setting (no functional changes).
2012-07-29 17:49:14 +00:00
c41e1e434a code cleanup: replace MIN2/MAX2 with minf/maxf 2012-07-29 16:59:51 +00:00
e32c60284a style cleanup 2012-07-29 00:20:28 +00:00
7ecc0ba999 Fix regression in clip reloading -- after recent change movie used
to be reset to default image size instead of it's actual size.
2012-07-28 18:14:44 +00:00
3ec212fd71 patch [#32195] MASKS: Canonical Porter Duff algorithm for merge missing.
from Troy Sobotka (sobotka)

This gives nicer blending then 'ADD', setting as default for new masks.
2012-07-28 11:36:01 +00:00
9a2d862123 clamp mask resolution, the occasional crash would happen failing to alloc when adding feather points very close together. 2012-07-27 11:05:08 +00:00
b8d96bc011 mask motion blur shutter option 2012-07-27 10:20:36 +00:00
52aa7a4a4c Added utility function to return marker's subframe position
Used in mask parenting stuff.
2012-07-27 10:12:58 +00:00
1543a713a8 copying a mask now copies its animation data too 2012-07-27 08:36:48 +00:00
c42b23030b copy support for mask datablocks 2012-07-27 08:18:11 +00:00
61469d2e3e code cleanup: remove unneeded 'struct' qualifiers 2012-07-26 22:47:05 +00:00
4c2de5e0c7 fix some types and incorrect info 2012-07-26 17:41:09 +00:00
fb520785b6 Run versioning stuff for animation summary color again
Seems it was messed up at some point or changes weren't applied
synchronized, which lead to lots of files with wrong color used.
2012-07-26 15:50:45 +00:00
2157031dc0 Fix #31550: Active Armature bone hardly distinguishable from other selected bones
Made active bone color a bit brighter and made it a userpref option.
2012-07-26 10:53:59 +00:00
ab0fa803cd image histogram/sample line couldn't show HDR colors. now allow zooming the view to see colors up to 10.0 2012-07-26 09:06:23 +00:00
be23539a94 code cleanup: use BKE_pain_ prefix for paint funcs. also minor style edits 2012-07-25 22:37:52 +00:00
2b133b14ab mask/image viewer now works with non 1:1 image aspect, editing masks in the image viewer should be generally usable now though still some TODO's left. 2012-07-25 20:39:49 +00:00
1091030c11 mask now draws in the image view, misc minor edits. 2012-07-25 13:44:59 +00:00
d9dbea1836 move mask and draw settings into its own struct to be shared between spaces. 2012-07-24 20:33:55 +00:00
23c4026c3f warn when getting a context member fails because of type mismatch 2012-07-24 10:28:29 +00:00
7949f0057f generalize mask poll functions and sequencer mask code. 2012-07-24 09:53:29 +00:00
Dalai Felinto
752e14ce15 no need for renaming actions that are not linked anywhere
talked with Joshua Leung (aligorith) and he agreed on that
2012-07-24 07:08:33 +00:00
161f502485 Fix for #32162 psys rotation causes size issues for particle instances
- The original scaling of the object wasn't taken into account when not using the particle dupliobject rotation option.
2012-07-22 23:07:43 +00:00
76bea854b6 code cleanup: replace cos(M_PI / 4) and sin(M_PI / 4) with M_SQRT1_2 define
also some minor style cleanup.
2012-07-22 18:40:50 +00:00
e58104c515 Bugfix [#32017] Infinite recursion in depsgraph material/node driver handling
When initially coding this functionality, I was aware of the potential for
infinite recursion here, just not how frequently such setups are actually
used/created out in the wild (nodetree.ma_node -> ma -> ma.nodetree is all too
common, and often even with several levels of indirection!).

However, the best fix for these problems was not immediately clear. Alternatives
considered included...
 1) checking for common recursive cases.  This was the solution employed for one
of the early patches committed to try and get around this. However, it's all too
easy to defeat these measures (with all the possible combinations of indirection
node groups bring).
 2) arbitrarily restricting recursion to only go down 2/3 levels? Has the risk
of missing some deeply chained/nested drivers, but at least we're guaranteed to
not get too bad. (Plus, who creates such setups anyway ;)
*3) using the generic LIB_DOIT flag (check for tagged items and not recurse down
there). Not as future-proof if some new code suddenly decides to start adding
these tags to materials along the way, but is easiest to add, and should be
flexible enough to catch most cases, since we only care that at some point those
drivers will be evaluated if they're attached to stuff we're interested in.
 4)  introducing a separate flag for Materials indicating they've been checked
already. Similar to 3) and solves the future-proofing, but this leads to...
 5) why bother with remembering to clear flags before traversing for drivers to
evaluate, when they should be tagged for evaluation like everything else?
Downside - requires depsgraph refactor so that we can actually track the fact
that there are dependencies to/from the material datablock, and not just to the
object using said material. (i.e. Currently infeasible)
2012-07-22 16:14:57 +00:00
9b51503307 style cleanup 2012-07-21 22:58:08 +00:00
62a73381a7 use fabsf when using floats. 2012-07-21 15:27:40 +00:00
1bb7cfded6 Merge mask fixes from tomato branch
--
svn merge -r49075:49076 -r49086:49087  ^/branches/soc-2011-tomato
2012-07-21 09:01:39 +00:00
250cdd5e52 code cleanup: remove commented includes - mostly from 2.4x 2012-07-18 23:07:07 +00:00
c8029bffd9 workaround for a bug with zero edges getting removed got feather faces out of sync and crashed 2012-07-18 16:24:13 +00:00
c0e004bd61 add difference blending mode, also fix error in last commit 2012-07-18 13:44:48 +00:00
73a778a4d0 change bucket size to give better performance for high detail 4k masks, also clamp from 0-1 for each layer when accumulating. 2012-07-18 13:34:14 +00:00
cfb3194945 code cleanup for mask capping 2012-07-18 12:54:13 +00:00
61ef13752d chance semi-circle mask capping resolution based on size. 2012-07-18 12:45:20 +00:00
eceec8856d minor edits to mask rasterizer. 2012-07-18 12:17:12 +00:00
e80918604a Fixed wrong self-intersection check for non-closed splines 2012-07-18 11:48:13 +00:00
8f32070e9d fix incorrect assert for mask face checking, also correct own bad spelling 2012-07-18 11:01:23 +00:00
c05af6210e Fixed crash of self-intersection loop in special cases
It was wrongly calculated bucket number per side in cases when some
of segments is filling the whole bounding box across some of dimension.

Solved by limiting buckets at least to 1 in such cases.
2012-07-18 10:22:56 +00:00
88fddb3cc3 make links now allows groups - this means you can make objects have matching groups to the active more easily. 2012-07-18 09:45:50 +00:00
7baa8d5203 mask rasterizer unfilled line end capping now works with aspect and blending. 2012-07-17 20:40:12 +00:00
b6a9ffffed wip mask capping - works but needs aspect correction and to be faded out. 2012-07-17 20:01:01 +00:00
2c2e1775f9 Feather self-intersection test speed up
Made some minor optimization such as:

- Avoid using "%" operation in loops, replace with a check
  for index "overflow".
- Use pre-computed values for scaling feather coordinates
  to 0 .. 1 space.

This allowed to reach couple of milliseconds of boost.

Another change is to use higher number of buckets (up to 512).
This doesn't took significantly more memory (like uses only 10MB
of memory for average splines) and allows to have 30-50x boost
for average splines.

Use dynamically calculated number of buckets for this, to be
sure segments would fit two buckets.

Also fixed intersection detection in some cases when edge is
shared between two buckets -- it is possible that such edge
would cross third bucket and intersect edge from there.
2012-07-17 16:22:18 +00:00
9c714f695a fix for particle system using uninitialized stack memory with midpoint of rk4 integrators. 2012-07-17 13:28:30 +00:00
6f0950a1f4 use math vector init functions 2012-07-17 12:05:15 +00:00
e35d3083ec Fixed crash when rasterizing spline with only one point
It was an issue in new feather self-intersection test code.
2012-07-17 10:43:57 +00:00
f4cff34392 disable feather collapse during drawing, its very slow. 2012-07-17 09:56:10 +00:00