Commit Graph

45296 Commits

Author SHA1 Message Date
c3e59379c0 UI message fix (yeah, I know... :/ ). 2014-08-20 21:52:00 +02:00
49b894bcc1 Cleanup: some const and bool cleanup. 2014-08-20 20:41:30 +02:00
968389d7b6 Restore red name for disabled modifiers.
Don't know when this was lost, 2.70a already did not have it... :/
2014-08-20 20:25:58 +02:00
7a36251bc9 Fix T41497: Colour Ramp UI Bug. 2014-08-20 14:46:38 +02:00
3a1a1f83cf Fix for recent solidify rim-only patch 2014-08-20 20:33:25 +10:00
27e7760913 BKE_units: Some cleanup (mostly bools instead of ints). 2014-08-20 12:31:15 +02:00
8535b9bd15 Fix T38722: Adding units in Imperial setting results in inconsistent values
Now always check for a default unit, and evaluate the whole expression in this "unit space".
Not an ideal solution, but should handle most cases nicely
(we can't address all possible corner cases anyway).

Note default unit is searched in current string first (bigger unit of current system wins),
then in previous string.

Note this also replaces ',' by '+' in default separation between units,
helps solving issues with parenthesis (e.g. (1'1")*2.5 would fail in existing code)!
This would break if someone uses py ops with lower precedence than '+' (like bitwise
operations, and comparison), but these are not expected usecase here anyway.

Reviewers: campbellbarton

Differential Revision: https://developer.blender.org/D340
2014-08-20 12:12:03 +02:00
21da42bd7a Viewport resolution divider works fine for halos now 2014-08-20 15:30:31 +06:00
d2cc65cd1c Fix for missing updates of build scripts in the commit rB05cb63ecf750. 2014-08-20 13:35:45 +09:00
ed08597442 Correct mistake in recently added intersect tool
Sorting verts along an edge wasn't working reliably.
2014-08-20 12:44:11 +10:00
7bca8be24d BMesh: improve docs for BM_edge_split 2014-08-20 12:44:11 +10:00
eb8964fb7f Fix T41464: Material Boundary bug in Freestyle.
The reported issue was caused by an old bug combined with another bug
introduced by recent Freestyle Python API updates.

The old bug was that a mutable reference to CurvePoint was treated as if
it were immutable.  Iteration over CurvePoint objects is implemented by
the C++ CurvePointIterator class, whose dereference method
CurvePointIterator::operator*() returns a reference to a mutable data
member (probably originally intended for better performance).  Hence the
returned reference may vary upon iteration over different CurvePoints.
This implementation detail was overlooked and the returned reference was
treated as immutable (which is the case in fact for other Interface0D
subclasses except for CurvePoint).  This bug was surprisingly old as it
existed before the beginning of Freestyle integration into Blender.

The other bug was in the MaterialBoundaryUP0D predicate class that was
not properly handling the end of iteration.  It is noted that when the
iter() and next() built-in functions are applied to Interface0DIterator,
it is no longer possible to reliably check the end of iteration by the
.is_end property of the iterator.  Namely, the .is_end property works as
expected only when iteration is carried out in combination with the
conventional .increment() and .decrement() methods of the iterator.  For
this reason the commit rBb408d8af31c9 was partly reverted to recover the
previous definition of MaterialBoundaryUP0D.
2014-08-20 10:37:41 +09:00
4b4ae8374f Cleanup: style 2014-08-20 08:47:32 +10:00
f5538fe2a6 Replace strstr with STRPREFIX
No need to search the whole string.
2014-08-20 08:38:40 +10:00
09fc5d6a37 Roto: Add spline dragging zone in it's center
This dragging zone is visualized as the circle (the same as object origin)
in the spline bounding box center and dragging that circle drags the whole
spline.

Pretty much basic functionality, but quite useful in practice.

Requested by our roto team (Sebastian and Sean :) in IRC.
2014-08-19 21:29:45 +06:00
2184ac8c9d Fix T41457: Viewport resolution divider does freestyle for every resolution
Now freestyle would be rendered for the final resolution only, making it so
viewport navigation is really interactive.
2014-08-19 19:39:13 +06:00
1a20074acb Fix T41485: No priority: typo in "effectors effect themselves"
Who said 'commit count'? I only see 'bug fixing' here...
2014-08-19 15:09:34 +02:00
28c6982b37 Fix T41477: Some UI op buttons have no more option to edit shortcuts.
`WM_keymap_guess_opname()` was missing a bunch of op 'types'/familly. Now all are there,
either trying to find a matching keymap, or explicitely listed in a comment as skipped for now.

Note matching might not be perfect in all case, but we can easily tweak that later if needed.
2014-08-19 14:50:59 +02:00
3196a230a6 Mask slide can be cancelled with RMB now 2014-08-19 17:23:18 +06:00
5e6b79c1f5 Fix crash in BKE_mesh_validate_arrays 2014-08-19 21:11:57 +10:00
37da1dadb6 Fix mesh validate skipping first vertex 2014-08-19 18:49:54 +10:00
95ae98caea Fix T41479: BLI_bvhtree_find_nearest inaccurate
Gives noticeably better results for shrink-wrap (even in simple cases)
2014-08-19 17:58:07 +10:00
1dbadf16a8 Fix for BKE_deform_flip_side_name getting fooled by extra separator characters
D740 by ldo with own edits
2014-08-19 16:18:07 +10:00
ea07d93f77 Fix for fix (don't guess enum's sign) 2014-08-19 07:08:15 +10:00
b07ea2fc15 Fix T41456: soft light texture blend mode zero effect
Soft light and Linear light blend modes weren't implemented in glsl

Reviewers: psy-fi

Maniphest Tasks: T41456

Differential Revision: https://developer.blender.org/D744
2014-08-18 19:14:51 +02:00
e1eb2e99f7 Correction to previous curve bevlist commit 2014-08-18 21:16:21 +06:00
eb10cda135 Fix T40653: Modified keymap: MMB not behaving like RMB?
Modal frame_change was not terminating on mmb release event...
2014-08-18 16:37:01 +02:00
2a514f8e29 Fix building on some compilers (clang on OSX).
Reported and patch by jensverwiebe (jens verwiebe).
2014-08-18 15:39:40 +02:00
afa3469288 De-duplicate EWA filter code between renderer and compositor
The title says it all, move the EWA filter to BLI (currently it's
math_interp.c) and use the function from both BI renderer and the
compositor.

This makes more central place of the algorithm, allowing to have
fixes and optimizaitons synchronized across the two usages.

This also fixes T41440: Displacement in compositing creates holes

Reviewers: campbellbarton, lukastoenne

Reviewed By: lukastoenne

Maniphest Tasks: T41440

Differential Revision: https://developer.blender.org/D748
2014-08-18 19:38:15 +06:00
354b17d2f3 Fix T41137: Old render result from viewport render in camera view does not go away when middle clicking 2014-08-18 19:33:06 +06:00
de12cd706f Fix T41426: floating menus - scroll issues.
Do not reset active but if cursor is not over it when getting mousewheel events.
2014-08-18 14:13:55 +02:00
71ce415f4a Fix T41462: "Reload from trusted" button not prompting for confirmation.
Made 'revert_mainfile' op also handle the 'use scripts' option, and use it
for this feature (since it has a nice simple invoke confirmation popup).
2014-08-18 14:13:55 +02:00
dc05d817eb Correction to the mipmaps generation
Seem we've always were wrong with multiplying alpha by 255,
other channels seems to be multiplied by 256 with the shift
operations.
2014-08-18 18:03:56 +06:00
6c7467e0da Fix T41085: Blender crashes when using "spline" or "segments" for bevel curve factor.
Root of the issue goes to the fact that bevel list calculation might drop some points
if they're at the same position. This made spline length calculation goes wrong.

Now the length of the bevel segments is stored in the bevel list, so values are
always reliable.

Initial patch by Lukas Treyer with some tweaks from me.
2014-08-18 17:38:20 +06:00
05cb63ecf7 Fix for line style shader/texture types showing up in the node editor when Freestyle is disabled at compile time.
Problem report by Thomas Dinges on IRC, thanks!
2014-08-18 16:57:17 +09:00
8986883de1 Fix T41314: OpenGL error when using Cycles engine 2014-08-18 13:55:22 +06:00
b9ebf44139 BMesh: intersect tool
Modeling tool to cut intersections into geometry (like boolean, without calculating inside/outside).
Faces are split along intersections, leaving new edges selected.

Access from Face menu.
2014-08-18 17:09:30 +10:00
4795b61c1b Cleanup: assert / warn 2014-08-18 16:05:06 +10:00
baea85b449 BMesh: add BM_vert_splice_check_double
checks if splicing verts creates duplicate edges
2014-08-18 15:59:14 +10:00
e85bcfab04 Fix T41467: Modifier view buttons changing positions.
Commits early in this year (to save some space) broke this. Hopefully this time
it works in all cases - lastCageIndex is no more influenced by realtime/edit active states.
Also, inactivate buttons instead of hiding them, can be useful to set those data
even though it does not have any immediate effect.

Took the opportunity to switch cage buttons to RNA, btw.
2014-08-17 09:50:45 +02:00
ed26d9dd90 BLI_array: utility function for searching an array 2014-08-17 16:02:20 +10:00
1dd17bed4a Knife tool: simplify hit-depth calculation 2014-08-17 12:50:48 +10:00
bba80ed7af Cleanup 2014-08-17 12:18:40 +10:00
f789d0b606 Math Lib: replace epsilon with check against zero
line-tri intersection depended on scale, The check made small triangles & lines fail.
So just check for divide by zero as ray-cast currently does.
2014-08-17 08:42:08 +10:00
1ad9987af1 Fix filenames in splashscreen.
For some reason, labels of buttons in popups/menus were clipped left.

Removed that function (was the only place were it was used), clipping text
by its left is really bad for its understanding!

Instead, extended clip_middle code so that it optionnally preserves a right piece of
the given string (like the shortcut part of a menu label). Think that's what makes
more sense here (note that most menus adapt themselves to their longest item,
we do not have much fixed-width ones, anyway).

Also tweaked a bit clip_middle logic, so that left part always have at least ten chars
(in addition to already existing 'min width' checks).
2014-08-16 22:36:23 +02:00
c47a01da11 Math Lib: add isect_line_line_epsilon_v3 2014-08-16 15:13:11 +10:00
88ee650263 Comments 2014-08-16 10:51:07 +10:00
513b8ddf06 Fix T41421
Don't store selection properties, if those are set in the keymap we can
end uo locking one state forever.
2014-08-15 17:32:05 +02:00
968e1b3b10 Fix T41427: Region overlap moves into wrong window.
There was some fuzzyness in `region_overlap_fix()`, using an 'other side' region
as ref to move current one in case their rect would intersect...

New code is a bit more complex, but should handle nicely all situations, mostly
ensuring we only translate an overlap if we find a previous one **on the same side**,
and ensuring we also never have intersecting overlapping regions from different sides
(since this does not work nice at all).
2014-08-15 15:40:53 +02:00
b6df448176 Cleanup 2014-08-15 19:59:31 +10:00