- Fix weight value on an animation target controller settings not saving (loading still worked)
- Position and Rotation weights for controllers (shows up as two additional storables per controller, additive to the ones in the Parent & More panel)
- Allow deleting / cutting trigger keyframes at frame zero
- When trying to save an animation that has broken references, save the previous values instead of crashing
- Fix rotation controller panel showing the position target edit screen instead
- When importing shared animations only in an empty instance, keep Anim 1 to avoid crashes
- Fix crash when toggling loop in imported animations
- Previous / Next Segment storable and keybinding
- Current Animation Changed trigger (Global trigger called whenever an animation transitions)
- Detect and skip broken frames to avoid losing corrupted scenes completely
- Rename "Paste current pose" to "Paste copied pose" to avoid confusion
- Fix pasting a trigger on an animation without that trigger copies the trigger on every animation and at the end too
- Make sure float param ref checks are always done when loading or playing
- Fix incorrect max end selection slider on animation change, fix crash when sliding in empty animations
- Clear all layer Animations storable choosers on stop
- update curve immediately when keyframes reduce finished (thanks @sfishere !)
- Fix compression so it doesn't trip up text editors (NOTE: Animations saved with 283 cannot be opened in earlier versions!)
- Fix issue that targets the main gender of a morph when the added morph was actually for the other gender
- When using Split Position and Rotation, split for all animations of the layer
- Real time now supports time scale
- Fix copy paste controls on an animation that doesn't contain them
  • Real time works! So you can expect Timeline animations to fit with audio without Audio Sync, finally!
  • Reduce save file size by more than 6 times! For older scenes, go to More, Options to use the Serialization Mode "Optimized". This requires Timeline 6.3+ to open.
  • Animate rotation and position separately; this is still a beta feature, it will allow you to only animate the rotation or only animate the position, each with their own keyframes. Note that when moving a control, it will update both. If there's enough interest, I'll improve this feature before releasing it.
  • New global triggers for On Play and On Clips List Changed (in Options, Global Triggers)
  • New option to prevent entering an animation group into specific animations, typically exit animations. For example, if you enter dance/*, you can exclude dance/finish-dancing - Thanks @cheesywheesy for the contribution!
  • New storable to get and change the current animation by layer ("Animations LAYER") - Thanks @cheesywheesy for the contribution!
  • New option to pause sequencing, this will prevent sequences to run until you un-pause them - Thanks @cheesywheesy for the contribution!
  • Option to sort animations by name - Thanks @cheesywheesy for the contribution!
Features

- SmoothMoves by GargChow is now built-in
- Greatly improved "Real Time" (now plays much more closely to audio and clock time). To preserve compatibility, previously created scenes using Real Time will use "Legacy Real Time" mode.
- Keybindings shortcut to make a backup of the current animation, and restore it (one animation can be backed up at a time).
- Import now supports creating new layers on an existing segment when possible
- Avoid calling end-of-animation triggers during blending. Do not call triggers when blending in before reaching frame 0 (so no more weird end-of-animation trigger calls when blending)
- Move the 3D curves in the Curves view; that allows seeing them in the Smooth and Reduce screen too, making it more obvious what it does to your animation.
- New defaults system in More, Defaults (Record and Reduce screens only)
- Order groups in the dope sheet in alphabetical order
- Keybindings shortcuts: Keyframe_Add_AllSelected to keyframe all selected targets
- Recording: When a non-looping animation has a next sequence, show the marker at the next animation's position
- Recording: Record from current scrubber position (clears keyframes after) and remain in position after record stop
- Add Animation: Option to automatically assign as the next animation in sequence
- When loading an animation with a shared segment, select the first non-shared segment by default
- Logging screen: Show the playing animation in the VaM's main UI help text
- Record: When recording float params, return to the Record screen when recording is complete
- Advanced keyframe tools: Keyframe pose only affects selected targets when a selection exists (otherwise, it affects all control targets)
- Improved plugin loading times

Bug fixes

- Fix create animation on other atoms not using the current animation as a reference (resulting in out of order animations and wrong copy keyframes source)
- Fix that prevents adding invalid control to an animation (e.g. gens controls on a female)
- Fix poses being applied during editing in the the middle of an animation when Apply on transition is on
- Fix for loading scenes that had previous errors resulting in duplicated tracks
- Fix for Coroutine couldn't be started because the the game object 'Curves' is inactive
- Correctly update float param sliders after cut or paste
- Fix float param slider rounding values during recording
- Stop running garbage collection when recording for a smoother recording start (won't freeze for a second)
- When creating an animation, select it in other atoms
- When adding animations in all atoms, correctly sync the position, copy settings, copy keyframes and create an all layer options
- Improved readability of the Import screen
- When deleting an animation, select the previous one instead of the first one
- Fix instead range / reset range not working in the Targets tab
- Fix force-apply min/max range of morphs on load not working anymore
- Fix nasty NullReferenceException crash when collapsing groups (thanks @GossamerVR for the help!)
- Allow grouping triggers, controls and morphs in a single group
- Create custom groups of targets (separate morphs and controls by your own grouping names)
- When importing, assign animations to an existing compatible layer or create a new segment (new import screen)
- Support for linking AptSpeaker and RhythmAudioSource audio sources
- Moved frame navigation to the bottom to reduce confusion with animations navigation
- Next / Previous Animation triggers now work on the first layer of the current segment
- When using -1 on "Play next in", always reduce the value by one loop
- Prevent negative values on randomize fields
- Do not check for missing morphs every frame, improve performance of animations when morphs are missing
- Fix sequencing not working since v6 on peer atoms (when playing on atom A, atom B sequencing will not work)
- Fix other gender morphs being replaced by current gender morphs on load when available (resulting in sometimes both being modified, e.g. mouth stays open when it should be closed)
- Fix Keyframe all targets not working on non-person atoms
- Fix Keybindings OpenUI commands not closing other plugins UI (thanks @everlaster#7004)
- Fix comply not being applied correctly (thanks @unnamed_plugins#7507)
- Fix Next / Previous Frame trigger not working on paused animations
- Log a message when peer sync is off and logging for peers is on (to help understand when peer sync doesn't work)

Example grouping and frame nav changes:

1663087978794.png
- Fix new animations copying position setting into rotation
- Fix sequence randomize group using own group name instead of specified group name
Back
Top Bottom