Motion Paths GUI Cleanup

This commit refactors the way that the Motion Paths GUI works. The key problems
this tries to address are:
1) Mode error - Confusion about whether we're dealing with the Object or Pose
level Motion Paths panel
2) Display settings vs Baking Settings

In line with the original design intentions for the 2.5/6 Properties Editor,
I've now split out the actual baking-related settings away from the Properties
Editor:
* Now, when clicking "Calculate Paths" from the toolbar, you'll be prompted with
a dialog to select the start/end frames (and for bones, whether to bake from
heads or tails). This is less confusing than relying on firstly setting the
range via the display range settings (and baking using that), since many people
apparently only used the "around current" mode, and were confused why things
weren't working

* Added a display of the frame ranges of the current baked Motion Path on the
active Object/Bone. This makes it clearer/easier to debug if the path suddenly
starts disappearing after a certain frame.

* Replaced Calculate/Clear Paths in the panels with a single "Update" button if
there's already a baked Motion Path.

Hopefully these changes (in combination with some of the other bugfixes) will
make it more obvious how everything works.
This commit is contained in:
Joshua Leung
2012-05-01 16:19:13 +00:00
parent fcb84663cd
commit ffc9fcb1a1
8 changed files with 152 additions and 54 deletions

View File

@@ -299,14 +299,10 @@ class OBJECT_PT_motion_paths(MotionPathButtonsPanel, Panel):
layout = self.layout
ob = context.object
self.draw_settings(context, ob.animation_visualisation)
layout.separator()
row = layout.row()
row.operator("object.paths_calculate", text="Calculate Paths")
row.operator("object.paths_clear", text="Clear Paths")
avs = ob.animation_visualisation
mpath = ob.motion_path
self.draw_settings(context, avs, mpath)
class OBJECT_PT_onion_skinning(OnionSkinButtonsPanel): # , Panel): # inherit from panel when ready