5 years agoCode cleanup: remove redundant matrix initialization
Campbell Barton [Tue, 29 Apr 2014 08:12:44 +0000 (18:12 +1000)]
Code cleanup: remove redundant matrix initialization

5 years agoCorrection to last commit
Mitchell Stokes [Mon, 28 Apr 2014 23:33:26 +0000 (16:33 -0700)]
Correction to last commit

5 years agoFix T39614: Ping Pong Action doesn't work correctly
Mitchell Stokes [Mon, 28 Apr 2014 23:22:20 +0000 (16:22 -0700)]
Fix T39614: Ping Pong Action doesn't work correctly

5 years agoFix T39939: Undo change of rB27db75363e67, which broke bevel.
Howard Trickey [Mon, 28 Apr 2014 22:38:00 +0000 (18:38 -0400)]
Fix T39939: Undo change of rB27db75363e67, which broke bevel.

The test for wire edges when reattaching was wrong, because
some newly made edges are wire at the point of the test.
This made some duplicate edges.
Need to track the original wire edges a different way.

5 years agoCode cleanup: simplify reallocs using MEM_recalloc
Campbell Barton [Mon, 28 Apr 2014 21:50:25 +0000 (07:50 +1000)]
Code cleanup: simplify reallocs using MEM_recalloc

5 years agoIgnore user-preferences when inserting keys from Python
Campbell Barton [Mon, 28 Apr 2014 21:34:09 +0000 (07:34 +1000)]
Ignore user-preferences when inserting keys from Python

5 years agoFix T39539
Jeroen Bakker [Mon, 28 Apr 2014 20:00:44 +0000 (22:00 +0200)]
Fix T39539

Initialization of not initialized memory when accessing the renderlayer

5 years agoError in last commit, need to take duration into account
Campbell Barton [Mon, 28 Apr 2014 20:05:54 +0000 (06:05 +1000)]
Error in last commit, need to take duration into account

5 years agoCorrection to last commit
Campbell Barton [Mon, 28 Apr 2014 19:48:25 +0000 (05:48 +1000)]
Correction to last commit

5 years agof-curve easing: Adjustments to Robert Penner elastic easing
Campbell Barton [Mon, 28 Apr 2014 19:31:50 +0000 (05:31 +1000)]
f-curve easing: Adjustments to Robert Penner elastic easing

Compensate for the clamped amplitude by blending the elastic effect.

Allows for a subtle elastic effect which wasn't possible before.

5 years agof-curve easing: make ease in/out expressions consistent
Campbell Barton [Mon, 28 Apr 2014 17:21:32 +0000 (03:21 +1000)]
f-curve easing: make ease in/out expressions consistent

5 years agof-curve easing: make ease-out symmetrical to ease-in
Campbell Barton [Mon, 28 Apr 2014 17:20:11 +0000 (03:20 +1000)]
f-curve easing: make ease-out symmetrical to ease-in

5 years agoPyC_RunQuicky: Print filename when its missing
Campbell Barton [Mon, 28 Apr 2014 16:55:02 +0000 (02:55 +1000)]
PyC_RunQuicky: Print filename when its missing

5 years agoFix for f-curve elastic ease in/out discontinuity
Campbell Barton [Mon, 28 Apr 2014 16:50:06 +0000 (02:50 +1000)]
Fix for f-curve elastic ease in/out discontinuity

5 years agoFix T39934: Duplicate node shown in outliner's datablock display
Bastien Montagne [Mon, 28 Apr 2014 14:37:30 +0000 (16:37 +0200)]
Fix T39934: Duplicate node shown in outliner's datablock display

Not good to have two different things named the same way! :P

5 years agoConvex Hull 2D: avoid calling qsort twice
Campbell Barton [Mon, 28 Apr 2014 14:33:48 +0000 (00:33 +1000)]
Convex Hull 2D: avoid calling qsort twice

5 years agoBevel: Avoid sqrt comparing lengths
Campbell Barton [Mon, 28 Apr 2014 13:35:23 +0000 (23:35 +1000)]
Bevel: Avoid sqrt comparing lengths

5 years ago"Auto" option for Keyframe.easing
Joshua Leung [Sun, 27 Apr 2014 13:42:51 +0000 (01:42 +1200)]
"Auto" option for Keyframe.easing

This option (alongside the Ease In/Out/InOut options already available) aims to make it
easier to get an initial curve that looks closer to the one you were expecting, by
automatically picking whether Ease In or Ease Out should be used based on the type of
interpolation being used for the curve segment in question.

* The types chosen may need some adjustments (e.g. using ease in-out instead of just ease in)
* This does break compatability with files saved in previous dev builds, but only
  if you were using Bounce/Elastic/Back with "Ease In"

5 years agoNLA Editor: Make Single User for NLA Strips
Joshua Leung [Mon, 28 Apr 2014 13:59:15 +0000 (01:59 +1200)]
NLA Editor: Make Single User for NLA Strips

This operator is used to make sure that if/when you have multiple strips
using the same action, if you select these and run this operator, each
strip will be given its own copy of the action. This is useful if you
decide later that you want to start using an existing action as a base.

NOTE: This does not recursively go inside meta's, so care is still advised
in that case.

5 years agoNLA Editor: Duplicate/Duplicate Linked
Joshua Leung [Mon, 28 Apr 2014 12:07:15 +0000 (00:07 +1200)]
NLA Editor: Duplicate/Duplicate Linked

This commit changes the default strip duplication behaviour (Shift-D) so that it will
create a copy of whatever action it uses. Previously, it was very hard, if not impossible
in some cases to create a new copy of an action to start working on in the NLA.

If you want the old behaviour, you'll need to use ALt-D (Linked Duplicates).

(Note: Although the new Shift-D may not be so optimal in all cases, I've decided to go
with this version since it aligns better with the way this works for objects. Doing the
opposite for NLA would just have added to the confusion)

5 years agoFix T39726: wire edges cause bevel artifacts.
Howard Trickey [Mon, 28 Apr 2014 13:07:47 +0000 (09:07 -0400)]
Fix T39726: wire edges cause bevel artifacts.

Now code explicity excludes wire edges from beveling
and reattaches the wire edges to one of the newly
created vertices after beveling.
Also fixes a bug where vertex-beveling a wire-edge-only
vertex would not reattach the wire edges.

5 years agoCycles CUDA: add support for sm_50 cards in, for testing.
Brecht Van Lommel [Mon, 28 Apr 2014 12:24:41 +0000 (14:24 +0200)]
Cycles CUDA: add support for sm_50 cards in, for testing.

5 years agoRaise min blend version to 2.70.5.
Bastien Montagne [Mon, 28 Apr 2014 12:17:09 +0000 (14:17 +0200)]
Raise min blend version to 2.70.5.

So that users opening a .blend saved in 2.70.5 and above in an older version
get warning the file might not be 100% compatible (should have been done
already for 2.70, actually).

5 years agoFix T39806: Koro rig (Caminandes) wrong in master, worked in 270(a).
Bastien Montagne [Mon, 28 Apr 2014 11:26:01 +0000 (13:26 +0200)]
Fix T39806: Koro rig (Caminandes) wrong in master, worked in 270(a).

Edit existing animsys_refactor module to make able to execute more complex conversions
('to' can now be a callback, instead of a simple prop name), and add a new
Update Animated Transform Constraints operator that uses it to handle complex
conversion for this constraint (drived or animated properties).

Note this operator has to be called manually (from 'space' menu), will make this clear
in release notes.

Also, similar changes made in 2.70 are *not* addressed by this script (would rather wrote
new operators as/if need arise, but Transform constraint looks much more sensible that the others).

This op should not remain in more than two or three releases anyway, imho.

5 years agoFollowup to rB8714ae09f894: better not have several RNA properties affect a single...
Bastien Montagne [Mon, 28 Apr 2014 11:20:37 +0000 (13:20 +0200)]
Followup to rB8714ae09f894: better not have several RNA properties affect a single DNA one.

5 years agoFix T39902: Keyframe insertion by a Keying Set fails in the edit mode when keyframing...
Tamito Kajiyama [Fri, 25 Apr 2014 16:44:55 +0000 (01:44 +0900)]
Fix T39902: Keyframe insertion by a Keying Set fails in the edit mode when keyframing object data properties.

Reviewers: aligorith

Reviewed By: aligorith

Differential Revision:

5 years agoOops! Typo in previous commit
Joshua Leung [Mon, 28 Apr 2014 07:37:29 +0000 (19:37 +1200)]
Oops! Typo in previous commit

5 years agoNLA Editor: Added an operator to set preview range based on the extents of selected...
Joshua Leung [Mon, 28 Apr 2014 07:33:28 +0000 (19:33 +1200)]
NLA Editor: Added an operator to set preview range based on the extents of selected strips

This brings it more in line with the other anim editors, and makes like a little
bit easier for animators working on games or looping anims.

5 years agoCode cleanup: short -> bool
Joshua Leung [Mon, 28 Apr 2014 07:20:14 +0000 (19:20 +1200)]
Code cleanup: short -> bool

5 years agoFix for strict compiler flags after recent const array changes
Sergey Sharybin [Mon, 28 Apr 2014 07:25:27 +0000 (13:25 +0600)]
Fix for strict compiler flags after recent const array changes

5 years agoRemove unused argument from sculpt_omp_start()
Sergey Sharybin [Mon, 28 Apr 2014 07:07:21 +0000 (13:07 +0600)]
Remove unused argument from sculpt_omp_start()

5 years agoFix T39911: Unpredictable behaviour when editing y-coordinate of right handle via...
Joshua Leung [Mon, 28 Apr 2014 05:08:51 +0000 (17:08 +1200)]
Fix T39911: Unpredictable behaviour when editing y-coordinate of right handle via Active Key panel (for aligned handles)

Editing the y-coordinate of the right handle of a keyframe via the Active Keyframe
panel in the Graph Editor, while both handles are selected and are both of type "aligned"
resulted in weird behaviours such as the x-coordinate of the right handle changing
(and rapidly starting to overshoot) but nothing else. However, this problem
doesn't occur when only a single handle is selected.

It turns out that the "order of computation" logic in calchandleNurb_intern() gets
confused in the case of both handles being selected, and results in a sub-optimal
handling of the right handle being the one that's been changed. We hack around this
here by temporarily making it so that just the right handle is selected when doing
the updates here.

5 years agoFix for typo in comment
Joshua Leung [Mon, 28 Apr 2014 04:44:06 +0000 (16:44 +1200)]
Fix for typo in comment

5 years agoFix T38594: Incorrect behaviour when editing aligned handles in curve editor
Joshua Leung [Mon, 28 Apr 2014 05:15:23 +0000 (17:15 +1200)]
Fix T38594: Incorrect behaviour when editing aligned handles in curve editor

With the right handle selected, the movement of the left handle appears constrained
to the frame it is currently on, leading to unpredictable and wild overshoots of the
bezier curve. There appears to be little benefit in doing so.

The effect of this patch is that makes it so that instead of trying (initially) to
maintain the same distance between the two handles and then overshooting randomly
later, the handles now try to keep the same distance from each other (i.e. similar
doing a rotation around the keyframe) at all times. While this means that it isn't
possible to set up assymetric handles (i.e. where ease in to the key is less than the
ease out for example) using aligned handles (it's still possible using free; it's just
a lot more work to keep them aligned), the benefits of removing of the random blips and jumps
when things jump outweight the losses.

Patch by Brecht

5 years agoPatch T39855: Icons for Interpolation Types (and Robert Penner easing)
Joshua Leung [Mon, 28 Apr 2014 01:49:00 +0000 (13:49 +1200)]
Patch T39855: Icons for Interpolation Types (and Robert Penner easing)

This patch adds icons for each of the keyframe interpolation types (including
the easing equations), as well as icons for the easing type options.

Icons made by: Paulo José Oliveira Amaro (pauloup)
Reviewed by: Joshua Leung, Thomas Beck

5 years agoGraph Editor: Added buttons for editing handle types on the active keyframe (from...
Joshua Leung [Sun, 27 Apr 2014 15:19:17 +0000 (03:19 +1200)]
Graph Editor: Added buttons for editing handle types on the active keyframe (from NKEY region)

5 years agoFix T39597: Missing entries in VSE Preview menu
Peter Schlaile [Sun, 27 Apr 2014 20:59:30 +0000 (22:59 +0200)]
Fix T39597: Missing entries in VSE Preview menu

This adds some view ratios in the video sequencer menu, based (copied) on the UV/Image Editor. It also fixes the inverted ratio issue reported in the same task.

Reviewers: #video_sequencer, #user_interface, schlaile

Reviewed By: schlaile

CC: jta, dingto, sergey, schlaile
Differential Revision:

5 years agoNew icons for texture painting by Pawel Lyczkowski.
Antony Riakiotakis [Sun, 27 Apr 2014 20:59:14 +0000 (23:59 +0300)]
New icons for texture painting by Pawel Lyczkowski.


Thanks a lot :)

Those only cover the current set of brushes, soc-paint brushes will be
commited on that branch

5 years agoTwo changes:
Antony Riakiotakis [Sun, 27 Apr 2014 20:38:21 +0000 (23:38 +0300)]
Two changes:

* Buffer icons are usually in straight space (since we load from pngs)
so use src_alpha in OpenGL for blending.

* Allow blending for preview icons. This will be useful for the next

5 years agoFix T39692: Text fields in datablocks editor are broken
Bastien Montagne [Sun, 27 Apr 2014 20:33:05 +0000 (22:33 +0200)]
Fix T39692: Text fields in datablocks editor are broken

Make RNAPointer props un-editable here, we simply cannot handle this.

Also correct previous commit, asking for autonaming for all items was a bit extreme,
this is only needed for enums!

5 years agoFix another part of T39692 Text fields in datablocks editor are broken.
Bastien Montagne [Sun, 27 Apr 2014 19:58:56 +0000 (21:58 +0200)]
Fix another part of T39692 Text fields in datablocks editor are broken.

Broken enums widgets was a sequel of rBe5e0888a8f02 (when we want auto-naming,
we have to pass NULL, not and empty string!).

Now remains the RNApointers issue...

5 years agoFix part of T39692: Text fields in datablocks editor are broken
Bastien Montagne [Sun, 27 Apr 2014 19:40:24 +0000 (21:40 +0200)]
Fix part of T39692: Text fields in datablocks editor are broken

Text field part. Issue with enums dropdowns remains a mystery currently.

As for pointer fields, afaict they have never worked here, though it should
not crash.

UI_EMBOSS are values, not bitflags (own fault, most likely)...

Note we should probably get rid of UI_EMBOSST, it is used nowhere in UI code (set
in one place only, used nowhere).

5 years agoEditmesh: Update tooltips for vert/edge/face buttons
Campbell Barton [Sun, 27 Apr 2014 17:52:42 +0000 (03:52 +1000)]
Editmesh: Update tooltips for vert/edge/face buttons

5 years agoRNA: Use unsigned ints when bit-shifting
Campbell Barton [Sun, 27 Apr 2014 17:42:13 +0000 (03:42 +1000)]
RNA: Use unsigned ints when bit-shifting

5 years agoCode cleanup: avoid warning about bit-shift outside int range
Campbell Barton [Sun, 27 Apr 2014 16:22:03 +0000 (02:22 +1000)]
Code cleanup: avoid warning about bit-shift outside int range

5 years agoFix T39921: Collada export creates invalid XML when using Track To constraint
Bastien Montagne [Sun, 27 Apr 2014 16:43:50 +0000 (18:43 +0200)]
Fix T39921: Collada export creates invalid XML when using Track To constraint

Constraints are no ID...

5 years agoFinal overlooked cleanup for last commit
Jens Verwiebe [Sun, 27 Apr 2014 16:44:23 +0000 (18:44 +0200)]
Final overlooked cleanup for last commit

5 years agoRevert the testing sculpt openmp thread control and limit for OSX to physical threads...
Jens Verwiebe [Sun, 27 Apr 2014 16:38:53 +0000 (18:38 +0200)]
Revert the testing sculpt openmp thread control and limit for OSX to physical threads as in 2.70a tag

5 years agoFix T39919: Collada export crashes blender when using a "Copy Location" constraint
Bastien Montagne [Sun, 27 Apr 2014 16:27:07 +0000 (18:27 +0200)]
Fix T39919: Collada export crashes blender when using a "Copy Location" constraint

5 years agoView3D: Tweak GLSL preview, use only lamps enabled in active render layer and materia...
IRIE Shinsuke [Sun, 27 Apr 2014 16:08:10 +0000 (01:08 +0900)]
View3D: Tweak GLSL preview, use only lamps enabled in active render layer and material light group.

This change makes lighting in GLSL preview more accurate, though it still
doesn't support material's "Exclusive" option.

Technical note: Changes in view3d_draw.c are not essential, these avoid
preparing unused shadow buffers.

Reviewers: brecht

Reviewed By: brecht

Differential Revision:

5 years agoCode cleanup: style, unused import
Campbell Barton [Sun, 27 Apr 2014 13:57:40 +0000 (23:57 +1000)]
Code cleanup: style, unused import

5 years agoCorrect some errors in auto-cleanup
Campbell Barton [Sun, 27 Apr 2014 12:02:25 +0000 (22:02 +1000)]
Correct some errors in auto-cleanup

5 years agoFix T34993: "Jump to Next Keyframe" shortcut not related to the timeline viewable...
Joshua Leung [Fri, 25 Apr 2014 15:36:34 +0000 (03:36 +1200)]
Fix T34993: "Jump to Next Keyframe" shortcut not related to the timeline viewable keyframes

Made the timeline option to only show keyframes from selected channels/data be a
per-scene setting instead of the per-timeline option it was previously. This makes
it easier for animators working on rigs with multiple bones (especially during the
polishing phase), since now the timeline and jump to keyframe operators use the same
setting to decide which subset of keyframes they need to consider.

By default, this option is enabled by default.

TODO: Extend this to the keyframe status shading on the active object name in the 3D view?

5 years agoCode cleanup: const args and arrays
Campbell Barton [Sat, 26 Apr 2014 21:50:08 +0000 (07:50 +1000)]
Code cleanup: const args and arrays

5 years agoCode cleanup: use 'const' for arrays (blenloader, gpu, imbuf, makesdna, modifiers...
Campbell Barton [Sat, 26 Apr 2014 14:24:11 +0000 (00:24 +1000)]
Code cleanup: use 'const' for arrays (blenloader, gpu, imbuf, makesdna, modifiers, nodes)

5 years agoCode cleanup: use 'const' for arrays (bmesh)
Campbell Barton [Sat, 26 Apr 2014 14:23:36 +0000 (00:23 +1000)]
Code cleanup: use 'const' for arrays (bmesh)

5 years agoCode cleanup: use 'const' for arrays (editors)
Campbell Barton [Sat, 26 Apr 2014 14:22:49 +0000 (00:22 +1000)]
Code cleanup: use 'const' for arrays (editors)

5 years agoCode cleanup: use 'const' for arrays (render)
Campbell Barton [Sat, 26 Apr 2014 14:22:07 +0000 (00:22 +1000)]
Code cleanup: use 'const' for arrays (render)

5 years agoCode cleanup: use 'const' for arrays (windowmanager)
Campbell Barton [Sat, 26 Apr 2014 14:21:43 +0000 (00:21 +1000)]
Code cleanup: use 'const' for arrays (windowmanager)

5 years agoCode cleanup: use 'const' for arrays (python)
Campbell Barton [Sat, 26 Apr 2014 14:21:23 +0000 (00:21 +1000)]
Code cleanup: use 'const' for arrays (python)

5 years agoCode cleanup: use 'const' for arrays (blenlib)
Campbell Barton [Sat, 26 Apr 2014 14:20:55 +0000 (00:20 +1000)]
Code cleanup: use 'const' for arrays (blenlib)

5 years agoCode cleanup: use 'const' for arrays (blenkernel)
Campbell Barton [Sat, 26 Apr 2014 14:20:13 +0000 (00:20 +1000)]
Code cleanup: use 'const' for arrays (blenkernel)

5 years agoCycles: avoid some CUDA performance on scenes without deformation motion blur.
Brecht Van Lommel [Sat, 26 Apr 2014 12:25:20 +0000 (14:25 +0200)]
Cycles: avoid some CUDA performance on scenes without deformation motion blur.

5 years agoAvoid integer overflow in build_implicit_tree_helper
Campbell Barton [Fri, 25 Apr 2014 20:55:36 +0000 (06:55 +1000)]
Avoid integer overflow in build_implicit_tree_helper

5 years agoFix T39896: lock view rotation, behavior not consistent
Campbell Barton [Fri, 25 Apr 2014 17:18:18 +0000 (03:18 +1000)]
Fix T39896: lock view rotation, behavior not consistent

5 years agoOutliner: avoid using bitshift when hashing (which could use negative numbers)
Campbell Barton [Fri, 25 Apr 2014 17:06:36 +0000 (03:06 +1000)]
Outliner: avoid using bitshift when hashing (which could use negative numbers)

5 years agoFix for transform local-axis calculation with zero length normals
Campbell Barton [Fri, 25 Apr 2014 16:01:54 +0000 (02:01 +1000)]
Fix for transform local-axis calculation with zero length normals

5 years agoAlways init pointcache frame step to 1.
Bastien Montagne [Fri, 25 Apr 2014 15:55:37 +0000 (17:55 +0200)]
Always init pointcache frame step to 1.

Note it was already the case for many simulations (cloth, rigidbody, etc.), just doing this
systematically in BKE_ptcache_add() now, will avoid us some recurring bug reports.
Advanced users will know when they can/have to raise this parameter!

5 years agoFix T39895: Displaying the armature layers popup in edit mode always fails.
Bastien Montagne [Fri, 25 Apr 2014 15:07:30 +0000 (17:07 +0200)]
Fix T39895: Displaying the armature layers popup in edit mode always fails.

In fact, armature layers operators (set layers, and show all) were kind of messy and broken
in Edit mode (Select layers had two different operators for Pose and Edit modes, both
using the same funcs that could only work in Pose mode, Show All was supposed to be
used in both modes but again, its exec code could only work in Pose one).

Fixed that by:
* Using only one op for each task, for both modes (with adapted poll func).
* Replacing 'object from context' access by an helper that returns the right Armature
object in both Edit and Pose modes.

5 years agoBoxPack: replace macros with functions
Campbell Barton [Fri, 25 Apr 2014 14:07:51 +0000 (00:07 +1000)]
BoxPack: replace macros with functions

also correct error merging vertices

5 years agoFix T39843: cycles memory leak rendering with high transparent depth.
Brecht Van Lommel [Fri, 25 Apr 2014 13:25:34 +0000 (15:25 +0200)]
Fix T39843: cycles memory leak rendering with high transparent depth.

5 years agoAdd message for constraint poll
Campbell Barton [Fri, 25 Apr 2014 12:04:03 +0000 (22:04 +1000)]
Add message for constraint poll

Was confusing for Python devs when these fail silently

5 years agoRevert previous change after discussion with Campbell
Sergey Sharybin [Fri, 25 Apr 2014 11:16:06 +0000 (17:16 +0600)]
Revert previous change after discussion with Campbell

Let's just be really verbose and it some compiler gives
issues tell him NOT to do this.

We shouldn't really workaround compiles' idiocy..

5 years agoFix strict flags compilation error in box pack
Sergey Sharybin [Fri, 25 Apr 2014 11:02:18 +0000 (17:02 +0600)]
Fix strict flags compilation error in box pack

No need to check q >= 0 in quad_flag() since q is
an unsigned int argument.

5 years agoFix T39799: Backdrop (compositor) ignores alpha.
Lukas Tönne [Fri, 25 Apr 2014 10:00:35 +0000 (12:00 +0200)]
Fix T39799: Backdrop (compositor) ignores alpha.

This issue is because of a somewhat "special" behavior in old code, which got lost during rB09874df:

There was a variant of the `relinkConnections` function which would leave the socket completely unconnected. This is not a valid state really (given that each unconnected input must otherwise connected to a constant `Set` type node), but was used as a way to distinguish connected alpha/depth sockets in composite and viewer output nodes.;28a829893c702918afc5ac1945a06eaefa611594$69

After the large cleanup patch ({D309}) every socket is now automatically connected to a constant, such that `getInputSocketReader` will never return a NULL pointer. This breaks the previous test method, which needs to be replaced by more explicit flags. Luckily this was done only for very few output nodes (Composite, Viewer, Output-File). These now use the regular SetValueOperation default in case "use alpha" is disabled, but set this to an explicit 1.0 value instead of mapping to the node socket.

5 years agoFix T38924: wm.link_append() could fail to append
Campbell Barton [Fri, 25 Apr 2014 08:34:47 +0000 (18:34 +1000)]
Fix T38924: wm.link_append() could fail to append

When the library path was changed by BLI_cleanup_path
appending would fail.

5 years agoFix T39886: Transformed parents of Rigid Bodies cause problems with Bake To Keyframes
Sergej Reich [Fri, 25 Apr 2014 03:26:48 +0000 (05:26 +0200)]
Fix T39886: Transformed parents of Rigid Bodies cause problems with Bake To Keyframes

Need to convert transforms to parent space for objects with parents.

5 years agoFix T39880: Cancelling transforms in Graph Editor does not restore F-Curves to origin...
Joshua Leung [Fri, 25 Apr 2014 01:32:27 +0000 (13:32 +1200)]
Fix T39880: Cancelling transforms in Graph Editor does not restore F-Curves to original state

Since autosnap was being applied during the flushing step for various practical reasons,
it wasn't possible to restore keyframes and handles to their original values, as these
would always get overwritten before getting a chance to be written back to the keyframes.

5 years agoSpelling error fixes
Joshua Leung [Fri, 25 Apr 2014 01:19:21 +0000 (13:19 +1200)]
Spelling error fixes

5 years agoFreestyle: Fix typos in a tool tip.
Tamito Kajiyama [Fri, 25 Apr 2014 00:21:52 +0000 (09:21 +0900)]
Freestyle: Fix typos in a tool tip.

5 years agoCode cleanup: unused python vars & imports
Campbell Barton [Thu, 24 Apr 2014 19:31:20 +0000 (05:31 +1000)]
Code cleanup: unused python vars & imports

Use frosted rather then pyflakes

5 years agoFix T39874: Bone roll resets if bones are moved in edit mode
Bastien Montagne [Thu, 24 Apr 2014 19:15:43 +0000 (21:15 +0200)]
Fix T39874: Bone roll resets if bones are moved in edit mode

Own stupid typo in rBee387c6addb2, sigh...

5 years agoQuiet warnings
Campbell Barton [Thu, 24 Apr 2014 17:18:19 +0000 (03:18 +1000)]
Quiet warnings

5 years agoBoxPack: add bias, fixes erratic placement with identical boxes
Campbell Barton [Thu, 24 Apr 2014 17:03:58 +0000 (03:03 +1000)]
BoxPack: add bias, fixes erratic placement with identical boxes

5 years agoBoxPack: remove unusable vertices while packing
Campbell Barton [Thu, 24 Apr 2014 16:50:56 +0000 (02:50 +1000)]
BoxPack: remove unusable vertices while packing

avoids having to check placing boxes there.

5 years agoBoxPack: add support for merging verts as they are packed in
Campbell Barton [Thu, 24 Apr 2014 16:46:34 +0000 (02:46 +1000)]
BoxPack: add support for merging verts as they are packed in

Reduces the number of vertices to pack boxes into.

5 years agoBoxPack: flag verts used in packed boxes
Campbell Barton [Thu, 24 Apr 2014 15:31:52 +0000 (01:31 +1000)]
BoxPack: flag verts used in packed boxes

5 years agoBoxPack: remove quad_flags array, replace with inline bit-shift
Campbell Barton [Thu, 24 Apr 2014 15:19:06 +0000 (01:19 +1000)]
BoxPack: remove quad_flags array, replace with inline bit-shift

5 years agoBox Pack: Improve when packing boxes of the same size
Campbell Barton [Thu, 24 Apr 2014 15:02:51 +0000 (01:02 +1000)]
Box Pack: Improve when packing boxes of the same size

5 years agoSmart UV Project: don't rotate islands which are almost square
Campbell Barton [Thu, 24 Apr 2014 14:43:15 +0000 (00:43 +1000)]
Smart UV Project: don't rotate islands which are almost square

5 years agoFix T39861: UI destroys float precision.
Bastien Montagne [Thu, 24 Apr 2014 15:17:55 +0000 (17:17 +0200)]
Fix T39861: UI destroys float precision.

Note this is only a workaround in fact, adding some precision in radians case.
Validating the field will still generate a precision loss (doing otherwise is
doable-ish, but likely to backfire and/or add too much complexity in an already
complex area).

5 years agoAutoSnap Bugfixes: NLA Frame/Second Step didn't work
Joshua Leung [Thu, 24 Apr 2014 15:01:55 +0000 (03:01 +1200)]
AutoSnap Bugfixes: NLA Frame/Second Step didn't work

Since the NLA was also using the standard transform mode by default, this meant that
no frame/second step-snapping was happening here (i.e. like for the Graph Editor).
The actual differences between doing true stepping vs nearest here are quite small
(and don't really make much sense with NLA Strips), so for now, it should be fine that
these are the same.

5 years agoAutoSnap Bugfixes: NLA Editor - Nearest Second behaviour tweak
Joshua Leung [Thu, 24 Apr 2014 14:52:27 +0000 (02:52 +1200)]
AutoSnap Bugfixes: NLA Editor - Nearest Second behaviour tweak

The previous behaviour for nearest second meant that transforming the strips often
caused their lengths to change (sometimes drastically), since strip lengths aren't
always uniformly x-seconds long. Now, it only snaps the start frame value, and adjusts
the end of the strip to follow.

This works well for most cases, apart from negatively scaling the strip, where it will
get "stuck" as a 0.001 frame long strip (and the viewport drawing will be a bit weird
during this time). Nevertheless, negative scaling of strips isn't something that's exactly

5 years agoAutoSnap Bugfixes: NLA Editor - Nearest Frame/Second
Joshua Leung [Thu, 24 Apr 2014 14:37:26 +0000 (02:37 +1200)]
AutoSnap Bugfixes: NLA Editor - Nearest Frame/Second

Split off handling for nearest second from nearest frame

5 years agoMore AutoSnap Bugfixes: Time Stepping in Graph Editor
Joshua Leung [Thu, 24 Apr 2014 14:17:12 +0000 (02:17 +1200)]
More AutoSnap Bugfixes: Time Stepping in Graph Editor

* Frame Step now works correctly and as expected
* Second Step kindof works, but the handles are not well behaved.

5 years agoFix T39819: Decouple autosnap behaviour from time display
Joshua Leung [Thu, 24 Apr 2014 12:40:51 +0000 (00:40 +1200)]
Fix T39819: Decouple autosnap behaviour from time display

This commit cleans up and fixes some problems related to how the auto-snapping
behaviour in the animation editors works, resolving the issues mentioned in T39819.

1) "Nearest Frame" no longer snaps to the nearest second when time is displayed in seconds.
    Instead, there is now also a "Nearest Second" option, so that either can be used
    as needed instead of only when a certain time display is used.
2) A similar change has been made for "Time Step" - This is now "Frame Step" and "Second Step"

* Removed the unneeded getAnimEdit_DrawTime()
* Time Step/Frame Step don't work for Graph Editor yet (and seem to not have worked at all)
* NLA Editor also seems to be showing some weirdness now. Will be checked on.
* Cancelling nearest-second snapping doesn't work nicely, due to another bug with GraphEdit transforms.

5 years agoCode Cleanup: short -> bool
Joshua Leung [Thu, 24 Apr 2014 04:58:37 +0000 (16:58 +1200)]
Code Cleanup: short -> bool

5 years agoFix T39867: Hotkey is not displayed in the node editor's menu.
Bastien Montagne [Thu, 24 Apr 2014 14:46:54 +0000 (16:46 +0200)]
Fix T39867: Hotkey is not displayed in the node editor's menu.

Making both keymap and menu values the same, and adding a (debug only) check in
IDP_EqualsProperties_ex() warning when comparing two floats with nearly the same value.

5 years agoFollow-up to the previous fix for T37452: More descriptive tooltips for freestyles...
Tamito Kajiyama [Thu, 24 Apr 2014 14:42:05 +0000 (23:42 +0900)]
Follow-up to the previous fix for T37452: More descriptive tooltips for freestyles settings

Made additional tool tips revisions suggested by a comment to T37452.

5 years agoFreestyle: minor UI improvements.
Tamito Kajiyama [Thu, 24 Apr 2014 14:27:58 +0000 (23:27 +0900)]
Freestyle: minor UI improvements.

* The button icon for jumping to the Render Layers tab of the Properties context is
now RENDERLAYERS.  Previous icon BUTS was too general.

* Thickness position options are grayed out if not applicable.  These options are applied
only when plain chaining is used with the Same Object option enabled.