[Soc-2009-dev] Weekly status report - 03 July - Aligorith

Joshua Leung aligorith at gmail.com
Fri Jul 3 15:20:51 CEST 2009


Hi all,

This week I spent quite a bit of time recoding various existing
functionality to allow it to work correctly with NLA, and addressing some of
the wishlist items animators had for 2.5's animation editors. The following
(most of the todo tasks from last week, plus a few extras) tasks were done:
- Operators to move strips up/down one track.
- Renamed NLA operators to use a cleaner naming convention
- Made repeat work again. This started out as a bugfix, but quickly turned
into a rather major refactor of a few API's. Repeats are now shown on the
buttons.
- F-Modifiers now work from the NLA too (NLA-Strips can have F-Modifiers
added to affect all of the F-Curves they reference). The (unnecessary)
FModifier<->FCurve dependency was cleared up for the API functions there.
Likewise, the UI drawing code was ported over to the layout-engine to make
the layouts work in the NLA-Editor, with code cleanups made along the way.
- Added option to toggle between tweaking some strip's action 'in place'
(default) and in its unmapped timespace
- Added additional filtering options for action Groups - muting of all
F-Curves within a group, and hiding all F-Curves within a group (in the
Graph Editor only)

Bugfixes Done:
- repeat works again
- showing/hiding layers correctly updates the scene layers again, so objects
on the previously hidden layers get shown in Animation Editors. I'll hold
off porting this until the

Questions/Issues:
- I have a minor problem trying to provide RNA-access to an array of
dynamically allocated floats. This is needed for the 'Coefficients' array of
the Generator F-Modifier (see rna_fcurve.c for the relevant RNA-wrapping
code. I've commented out an approach to get this working using collections,
though I can't easily see how I'm supposed to string together a complete set
of collection-funcs to iterate or otherwise so that the items can be
accessed as a list or so of floats. For now, this is not that critical,
since I could still manage to hack together a hybrid layout_rna + old-skool
widgets UI to access these. However, it would be good to clean this up.

- I'm currently still stumped on how to extend the transform code for NLA
strips in the best way to solve 2 issues noted during user testing:
a) moving strips between tracks interactively - there's the single-step
operator as a fallback now, but being able to move between tracks while
transforming does seem more intuitive
b) preventing truncation of (normal) strips when they run into other strips
If I don't come up with any interesting ideas to this in the next few days,
I might just drop this target for now. Part of the dilemma is that none of
the existing transform methods really work well for this (sequencer style
results in unacceptable overlapping strips within the same track/layer,
graph editor style doesn't deal with scaling too elegantly, ...)

- User testing time :)   Nice screenies and files demonstrating how this
works would be nice

Todos:
- user-animateable influence/time controls -> implement changes to
keyframing code to cope
- review keyframing for modifier properties (related to above item too?)
- finish writing the documentation
- track down any crashers/bugs which I find...
- ... yet to be decided... (hook up stride/cycle/whatever that last
auto-walking solution was again)


BTW, this week should be a good time for users to start testing again.
Probably after I release the docs, to reduce the confusion about how things
worked that cropped up last time :)


Regards,
Joshua
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.blender.org/pipermail/soc-2009-dev/attachments/20090704/41bf8659/attachment.htm 


More information about the Soc-2009-dev mailing list