diff options
author | Joshua Leung <aligorith@gmail.com> | 2009-04-01 02:36:13 +0400 |
---|---|---|
committer | Joshua Leung <aligorith@gmail.com> | 2009-04-01 02:36:13 +0400 |
commit | 3a28a7450596f46281431bd163b9a237eb481055 (patch) | |
tree | 54268464f1adc33111b7bb3afde1ce1c64bf5897 /source/blender/windowmanager/intern | |
parent | 4861ddf350e776c09f319d6db7fb96634d952da6 (diff) |
Animato - Support for 'BuiltIn' and 'Relative' Keying Sets
When inserting keyframes in the 3D-View (support will be extended to other editors in due course) using the IKEY hotkey, the menu which appears will now consist of 3 parts:
* 'Active Keying Set' - this option allows you to use the user-defined KeyingSet which is active for the current scene (i.e. the one seen in the TimeLine/Outliner headers)
* User defined Keying Sets - a list of all such available KeyingSets is included, and entries can be chosen from there
* Built-In Keying Sets - see later...
To achieve this, several changes needed to be made first:
* Added support for 'relative' in addition to 'absolute' Keying Sets. Relative Keying Sets are Keying Sets which operate on data from the current context (i.e. a 'location' KeyingSet will add location keyframes for selected objects/bones/nodes as opposed to location keyframes for some particular object). The is a tentative 'templates' requirement system here, which still needs to be fully fleshed out.
* Added support for builtin Keying Sets (i.e. 'Location', 'Rotation', 'Scaling', and 'LocRot' as a few initial demonstrations), which replaces the temporary Insert Keyframe operator for the 3D-View (IKEY). These are effectively relative Keying Set definitions which are included in Blender by default and stored in a list separate from user-defined ones. Volunteer help in defining a few more of these for other editors will be welcome soon.
* Removed/replaced much of the crappy temporary Keyframing operator code, though a few tweaks could still be done.
Diffstat (limited to 'source/blender/windowmanager/intern')
-rw-r--r-- | source/blender/windowmanager/intern/wm_init_exit.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/source/blender/windowmanager/intern/wm_init_exit.c b/source/blender/windowmanager/intern/wm_init_exit.c index 990a862a102..1fa184e74a4 100644 --- a/source/blender/windowmanager/intern/wm_init_exit.c +++ b/source/blender/windowmanager/intern/wm_init_exit.c @@ -83,6 +83,7 @@ #include "wm_window.h" #include "ED_armature.h" +#include "ED_keyframing.h" #include "ED_node.h" #include "ED_previewrender.h" #include "ED_space_api.h" @@ -125,6 +126,8 @@ void WM_init(bContext *C) BLF_init(); BLF_lang_init(); + init_builtin_keyingsets(); /* editors/animation/keyframing.c */ + /* get the default database, plus a wm */ WM_read_homefile(C, NULL); |