2.5 Release Notes
Release date: 1st October 2025
File Version Bump
Scenes created in Cavalry 2.4.3 or earlier may be converted when opening them in Cavalry 2.5. If converted, the file will be copied to a new Scene which will need saving – you'll notice the legacy Scene will be named <yourSceneName> [Converted].cv
on opening. Any Scenes saved in 2.5 onwards may not be fully compatible with any previous versions of Cavalry.
New Features
Referencing - import other scene files as 'Assets' and then use them like a 'Pre-Comp' enabling multiple artists to collaborate on a bigger project.
Tracking tool - Track flat surfaces (planes) in video footage.
Export as Project - Export the Scene or selected Compositions along with any connected Assets to a new Project directory.
- AV1 support for WebM export.
- Video files that include audio are now imported with both a video and audio track.
Effects
Chroma Key Filter
Luminance Blur Filter
Spherise Filter
- Gaussian Blur Filter
- Bilateral Blur Filter
- Box Blur Filter
- Bulge Filter
- Directional Blur Filter
- Grain Filter
- Zoom Blur Filter
- Light Sweep Filter
Scripting
API
- listDirectoryPaths()
- getImageSequenceFilePaths()
- exportSelected()
- exportSceneAs()
- copyFilePath()
- showInAttributeEditor()
- clearAttributeEditor()
- getPalettesPath()
- presentChooseFolder()
- getHomeFolder()
- getPreferencesFolder()
- getAppDataFolder()
- getDesktopFolder()
- getTempFolder()
- getFontsFolder()
- getDownloadsFolder()
- isGoogleSheetAsset()
- getFontAssetFamilyName()
- getFontAssetStyleName()
Script UIs
Enhancements
- The Layout Group now includes options for Wrapping and a new Spacing Mode.
- Importing ProRes files on macOS now uses hardware acceleration.
- MP4 Export now uses hardware encoding on macOS for improved export quality and speed.
- Pre-Comp Overrides (also related to Referencing):
- The order Pre-Comp Overrides appear in Pre-Comps can now be customised.
- By default an Override's label is defined as
layerNiceName
.attrNiceName
but where an attribute has been renamed, just theattrNiceName
is now shown. - New compact UI design.
- New Reset Value to Origin command.
- Drag/drop re-orderable Arrays/Compounds.
- Components:
- Any animated attributes are now revealed when any child Layers are hidden (i.e. the Component is in non-edit mode).
- The 'spacious/compact' UI option has been removed now that re-ordering is possible.
- 'All Caps' has been added as a style option for the Text Shape.
- The SkSL Filter and Shader now include an Export to Plugin window.
- Constrain proportions UI added for the Box and Circle Arrows.
- Presets now support adding Layers from the Menus, Shelf and via drag and drop. For example, an Image Shader's Scale Mode can be set to Fit Cover when an image is dropped into the Viewport.
- The 'splitter' position for the Scene Window and JavaScript Editor is now saved between sessions.
- Holding Shift when importing Assets now opens Finder/Explorer to the
Scenes
directory defined in Project Settings – useful when working with References. - New right click options to close Compositions in the Scene Window.
- The path preview for the current Scene that appears at the top of the UI will now show relative paths when a Project is set.
- Multi-pass Shaders/Filters are now supported for third-party plugins.
- Cmd/Ctrl + F now activates search within Windows that support it.
- Option/Alt + T now toggles between the Time Editor and Graph Editor.
- The Shortcut Manager has been improved:
- New 'All Shortcuts' tab.
- Filtering/search in all tabs including search by shortcut.
- Improved 'error' indication.
- The window is now dock-able.
- If a shortcut belongs to a menu item within a 'sub-menu' its sub-menu name is now included. e.g. 'Align Left' is now 'Align Keyframes > Align Left'.
- Shortcuts can now be assigned to third-party scripts.
- Improved ordering of commands.
- Command Search now includes Quick Actions.
- When using any of the 'create and connect' workflows, holding Cmd/Ctrl will now load the new Layer's Attribute Editor UI. These include:
- Right click > Add Behaviour/Utility etc.
- The button for Deformers and Filters.
- The button on the Text Shape's string UI.
- The button on Falloffs and Shaders.
- The Resize String String Manipulator now supports Word, Line and Paragraph.
- Compositions now include a Preserve Frame Rate attribute.
- Third-Party Plugin authors can now specify which Cavalry version a plugin requires and prevent loading if that version is not matched.
- A new Edit Limits... feature which can be used to customise an attribute's hard/soft limits. This is useful for Components and Pre-Comp Overrides where a specific, custom range of values may be required.
- New Format command in the JavaScript Editor.
Notable Bug Fixes
- The connection icons to a Render Queue Item's File Name have been restored.
- Adding Feather in a Shape's Mask tab is no longer affected by Viewport Zoom.
- A UI issue with Attribute Expressions and a Shape's 2.5d Position/Rotation attribute has been resolved.
- The Graph Editor's Transform tool now handles non-integer keyframe values.
- Running the
Shape > Centre Pivot
command on a Group multiple times is now working as expected. - Fixed a regression where
right click > Replace...
an image asset broke any connected Image Shader. - An issue where adding Feather to Clipping Masks could offset the original Shape has been resolved.
- Fixed an edge case where individual Attribute Expressions for 2.5D transforms were not working.
- An issue with the Stroke Utility, Inner Alignment and the Composition Boundary has been resolved.
- A crash relating to Live Mode and loading a Range Falloff has been resolved.
- An issue meaning animated attributes within Components could be lost has been resolved.
- A memory leak exposed when using Dynamic Rendering has been resolved.
- Some scenarios where the Pan icon can get stuck have been improved.
- An issue where replacing an input connection via the Scene Window list would 'replace all' has been resolved.
- An issue related to the the default 'Compact' JSON Format preference which was causing long save times for customers using LucidLink has been resolved.
- Missing clipping options for the Boolean have been restored.
- Several issues with 'double transforms' have been resolved. For example, moving a Group containing a Text Shape and a Shape being used as its Text Path is now supported.
- A crash which could be triggered by deleting and then undoing an Array's index has been fixed.
- A crash converting a single keyframe (where it is the only keyframe) to bézier via Option/Alt + click has been resolved.
- Math2 now supports connections to
int2
attributes (like the Background Shape's Shrink attribute.). - Undo for reordering in the multi-row list (Shaders/Falloffs) is now working.
- Undo adding Shape's to a Forge Dynamics Shape Bodies list is now working.
- Undo adding to the Multi-Row list (Shaders/Falloffs) now works.
- Scripting:
- Breaking Change The incorrect bool argument is no longer required for
alwaysShowVerticalScrollBar()
andalwaysShowHorizontalScrollBar()
. - Breaking ChangeThe
localSpace
argument for movePoint is no longer inverted. - The
"url"
MIME type no longer incorrectly imports files as assets. - A crash when using
api.deleteAnimation()
to remove animation including Magic Easing is resolved. - A regression with the
onSelectionChanged
callback and assets has been resolved. - Reloading a
.xlsx
Asset is now working.
- Breaking Change The incorrect bool argument is no longer required for
Notes
- The Blur Filter has been renamed to the Fast Blur Filter to distinguish it from the new Gaussian and other Blur Filters.
- The settings for the Layer Tools and Viewport Tool Help have been moved from the Tool Settings window to the Viewport settings.