2.0 版本說明
發佈日期: 10th January 2024
在 Cavalry 1.5.6 或更早版本中建立的場景,在 Cavalry 2.0 中開啟時將會被轉換。該檔案將被複製為一個新場景,需要保存——你會注意到舊場景在開啟時將被命名為 <yourSceneName> [Converted].cv。從 2.0 起儲存的任何場景將不相容任何舊版本的 Cavalry。
Minimum requirements on macOS have been bumped to macOS 11 for the 2.0 release.
Cavalry 2.0 有哪些新變化?
标题为“Cavalry 2.0 有哪些新變化?”的章节新增功能:
- Cameras - Create a 2.5D environment to add depth to Compositions.
- Pre-Comp Overrides - Override attributes contained within Compositions to create templates.
- Component Shape - Collect Layers and promote attributes to create a simplified, custom container.
- Background Rendering - Hand off rendering to continue working in parallel.
- Tapered Strokes - Taper the width of a stroke along a Path.
- Big performance improvements.
- A new Particle system is now available as an Experimental Feature.
- And much more…
新功能
标题为“新功能”的章节Features
标题为“Features”的章节- Pre-Comp Overrides
- Promote a Layer’s attributes so they can be accessed and overridden from the Pre-Comp itself making it possible to add variation to several versions of the same Pre-Comp. - Track Mattes - mask Shapes with Alpha Mattes.
- A new Transform Only Motion Blur option for Shapes.
- Particle Distribution to position Shapes onto Particles.
- Animation Offsets - layer additional animation on top of any existing keyframe animation.
- Increment and Save added to the File menu.
- Palette Generator in the Color Window.
UI/UX
标题为“UI/UX”的章节- Upgrades to the JavaScript Editor
:
- Find and Replace text.
- Auto-indentation.
- Helpers for inserting matching brackets and double quotes.
- Snippet Editor.
- Motion Paths - Preview the position and speed of a Shape in the Viewport.
- Locking Layers Prevents Selection in the Scene Window option added to the Preferences window.
- When hovering Shapes in the Viewport, Pre-Selection Highlighting now appears. The level of detail is adaptive to the complexity of the Shapes being hovered. For example, rather than highlighting every character in a paragraph, simply show bounding boxes for the words or the entire Text Shape.
- The View menu now includes a Show Layer Names on Hover option.
- Labels now appear in the Viewport for selected Shapes.
Rendering
标题为“Rendering”的章节- Background Rendering
- Hand off rendering so you can continue working in parallel. - New Sprite Sheet render format.
- The WebP image format can now be imported as an asset and exported as a File Format.
- Alpha Add Blend Mode to help with fixing seams between adjacent edges.
- Retime Compositions at render time. See the Compositions tab on the Render Manager page.
Shape Editing
标题为“Shape Editing”的章节- Split Path at Selection command added to the Shape menu.
- Point Alignment added to the Align Window.
Shapes
标题为“Shapes”的章节- Component Shape
- Components are Layers that contain a collection of other Layers. Attributes from those Layers can be promoted to the Component in order to create a simplified custom user interface. - Tapered Stroke - Create a tapered stroke along a path. See Common Attributes (Stroke tab).
- Segment Path
- This replaces the Trim Path Utility (experimental feature) which has now been removed. - Merge - Create a Shape containing a closed Path from two Shapes containing open Paths.
- Super Shape added to the Basic Shape.
EXPERIMENTALParticle system including a Shape, Emitters and Modifiers.
Behaviours
标题为“Behaviours”的章节- Auto-Animate - Add a variety of animations to Shapes with only a few keyframes.
- Auto-Crop Behaviour - Crop Shapes based on their bounding box.
- Wave Deformer - Create looping wave distortions along open and closed Paths.
- Chop Path
- Chop a Shape into several slices. - Travel Deformer
- Reposition the start points for all Contours within a Path. - Value3 Behaviour.
- Value3 Blend.
- Camera
- Add a Camera to a Composition to create a 2.5D environment. - Radius Utility
- Generate the radius for a circle which encompasses several Shapes. - Value3 Array.
- Several Utility Layers have been added for use with the Particle Shape:
EXPERIMENTALEmitters - Define where Particles appear from and how many are added to the Composition:EXPERIMENTALModifiers - Fields which can be used to change a Particle’s Attributes.
- Background Blur Filter
- blur the areas of a Shape that sit within another Shape. - Checkerboard Shader - add a checkerboard pattern to a Shape.
- JavaScript Layers
now support Point Data (Distribution Points) and Layer data.
API 模組
标题为“API 模組”的章节- unParent()
- isVisible()
- getCustomAttributeName()
- getAllLayerTypes
- getAllSceneLayers
- getActiveCamera()
- hasActiveCamera()
- getSelectionBoundingBox()
- getAttrParent()
- getAttrChildren()
- addPreCompOverride()
- removePreCompOverride()
- listPreCompOverrides()
- move()
- backgroundRender()
- backgroundRenderAll()
- encrypt()
Cavalry 模組
标题为“Cavalry 模組”的章节- degreesToRadians()
- radiansToDegrees()
- boundingBox() now outputs variables for centre, top, bottom, left and right.
- New methods for the Cavalry Module’s Path Class:
- empty() - Return if a path is empty or not.
- pointCount() - Return the number of points in the path.
- contains() - Return if the point specified by x,y is inside the path (only works on a closed path).
- pathData() - Return an array of verbs and points representing the path.
- length() - Return the length of the path.
- pointAtParam() - Return a point object with x,y variables that corresponds to a position a given parameter along the path.
- tangentAtParam() - Return a point object with x,y variables that corresponds to a tangent a given parameter along the path.
- angleAtParam() - Return an angle in degrees representing the tangent a given parameter along the path.
- paramAtLength() - Given a length, return the corresponding parameter value for that length value.
- findClosestPoint() - Find the closest point on a path.
- offset() - Grow or shrink a closed Path.
- trim() - Reduce the length of a Path by clipping it from its start/end points.
- resample() - Rebuilds the path by sampling points based on a desired ‘edgeLength’.
- lineIntersections - Returns an array of points at which the path and line intersect.
- pathIntersections - Returns an array of points at which this path and the given path intersect.
- relax - Relax the points in the path away from each other.
- smooth - Smooths the points by averaging their positions.
- scatter - Scatter points inside the path via dart throwing. Points are relaxed by default.
- A new Line Class including several new methods.
- A new Mesh Class including several new methods.
- A new Material Class including several new methods.
- A new Matrix Class including several new methods.
Deformer 模組
标题为“Deformer 模組”的章节Note - the Mesh Module has been renamed to Deformer Module. Existing scripts using mesh. will be backwards compatible.
- meshDepth
- meshCountAtDepth()
- getMeshesAtDepth()
- setMeshesAtDepth()
- getMeshAtDepthAtIndex()
- setMeshAtDepthAtIndex()
- setTransformAtDepthAtIndex()
- clearTransformAtDepthAtIndex()
- centrePivotAtDepthAtIndex()
- setMaterialAtDepthAtIndex()
- highestDepthWithPath()
腳本 UI
标题为“腳本 UI”的章节- Container show()
- Container move()
- Container showAsPopover()
- setMinimumWidth()
- setMinimumHeight()
- setMaximumWidth()
- setMaximumHeight()
- getThemeColor()
- Modal()
- geometry() function.
Context 模組
标题为“Context 模組”的章节CLI
标题为“CLI”的章节- The Frame Behaviour has a new ‘Seconds’ interpolation.
- Beta Features have been renamed to Experimental Features to try and avoid the confusion between beta builds (e.g. Cavalry 2.0 beta 7 ) and the features.
- Sorting is now supported in the Assets Window.
- Group selection/interaction in the Viewport has been improved:
- Clicking and dragging any Shape within a Group will now move the whole Group.
- Double clicking a Shape will drill down to that hierarchy level.
- Hold S to select a child of a Group.
- Right click a Shape within a Group to select a parent within that hierarchy.
EXPERIMENTALTrails can now automatically inherit colours from a Particle Shape.- A Shape’s Opacity is now respected when used as the Input Shape to a Duplicator.
- The Mesh Explorer has had a facelift and now includes thumbnail previews.
- The Notes feature in the Scene Window now has a yellow background colour to improve contrast.
- When creating a Pre-Comp from the
Composition > Pre-Composemenu (or via the contextual menu in the Scene Window) the new Pre-Comp will inherit the parent Composition’s FPS. - New Flow Rows/Columns attribute for the Grid Distribution.
- Subdivide has an option to improve the resulting curve at the ends of open Paths.
- There’s a new Preference to determine whether locked Layers are also locked in the Scene Window.
- Points are now represented in the Viewport when using the Add Divisions Behaviour with Editable Shapes.
- If an Editable Shape is being deformed, the original path is now drawn along with the deformed path.
- Bracketed image sequences (e.g.
filename (1).png,filename (2).png,filename (3).png…) can now be imported to the Assets Window. - New Blur Align option added to the Composition Settings window.
- New improved defaults for the Drop Shadow Filter.
- A new option in the Render Manager to include (or not) the Composition Background in an SVG file.
- Scene Presets have been renamed to Demo Scenes (they were never really ‘presets’!).
- Several new Text transitions added to the Demo Scenes using the Auto-Animate feature.
- Several new JavaScript examples added to the Demo Scenes.
- Bevel now handles the penultimate points on open paths in a more predictable way.
- A warning is now thrown in the Message Bar when missing fonts are detected.
- Hierarchy is now respected when importing SVG artwork as Editable Shapes.
- Resample Path has a new Corner Angle attribute to help preserve corner points.
- Option/Alt + dragging a Pre-Comp in the Viewport will now create a second reference of the Pre-Comp (e.g. remain linked to the existing Composition) rather than create a new copy of the Composition.
- Get Sub-Mesh Transform now has a new Use Bounding Box attribute in order to support Words and Lines for Text Shapes.
- It’s now possible to disable Attribute Expressions.
- A new additional control will appear when Keyframe Layers are in use to reflect the combined values of all layers.
UI/UX
标题为“UI/UX”的章节- Connections can now be made by dropping a connection onto a Shape in the Viewport.
- The Font menu for a Text Shape now renders the list using the font. Fonts that are not supported fall back to the default.
- The Attribute Editor now includes:
- ‘Sticky headers’.
- Animated scrolling.
- Color divider added to the header.
- Dividers to better group common attributes.
- Improved indenting for Generators (e.g. a Duplicator’s Distribution).
- Improvements to the UI for Arrays.
- Show/hide attributes dependent on ‘mode’ (see Auto-Animate).
- New ‘inline help’ messages.
- Procedural Animation Curves are now previewed in the Graph Editor.
- Magic Easing settings can now be accessed in-line by double clicking a keyframe in the Scene Window.
- The pop up window that appears when double clicking a keyframe in the Graph Editor now contains more options including Magic Easing, interpolation and bezier handle lengths.
- Improvements have been made to ‘constraints’ for handles in the Graph Editor. Previously, constraints imposed on moving bezier handles (e.g. moving a handle past other keyframes) were overly aggressive which could result in the ‘double clicking an animation curve to add a new keyframe’ feature resulting in inaccurate curves in certain cases. Similar improvements have also been made to the Graph Attribute curves (e.g. Falloffs).
- Recently added Layers now appear as ‘quick add’ shortcuts in the Attribute Editor for a Shape’s Deformers and Filters attributes.
- New hotkeys for setting a Shape’s Fill/Stroke colors by clicking a color swatch in the Color Window.
- New commands to close a Composition or ‘other’ Compositions added to the Composition menu.
- The Enable Time Remapping command is now available from the context menu in the Scene Tree and Time Editor.
- It’s now possible to constrain the proportions of several attributes. For example, if a rectangles’s Width = 100 and Height = 200, setting Width to 200 will also set Height to 400 when the constraint is active.
- The Shift + F hotkey now fits to the Frame Range in the Graph Editor to match the Time Editor.
- Improvements to the preservation of animation curves when deleting keyframes in the Graph Editor.
- Improvements to the preservation of the graph curve when adding points in the Graph Attributes (e.g. Falloff).
- Entering partial valid hex codes now auto-complete (e.g. entering AB will result in #ABABAB).
- Icons have been added to the contextual menu for the Assets Window.
- Improved highlight contrast for editing values/strings/labels.
- Double clicking a Pre-Comp will now load its UI into the Attribute Editor – this is consistent with how any other Layer works in the Scene Window. Either clicking the
Openbutton or Option/Alt + Cmd/Ctrl + double clicking a Composition Layer’s row in the Scene Window will open that Composition (making it the active Composition). - A Control with Null option is now available when right clicking on a row in the Attribute Editor. This creates a Null and connects its Position to the row’s attribute.
- A Get Info option now appears when right clicking in the Viewport which provides information about the Shape under the cursor. Clicking a menu item will copy its value to the clipboard.
API
标题为“API”的章节- getBoundingBox() now outputs variables for centre, top, bottom, left and right.
- preCompose() - ‘name’ is now an optional argument.
- keyframe() in the API now also returns the keyframe’s Id.
Deformer
标题为“Deformer”的章节- getBoundingBox() now outputs variables for centre, top, bottom, left and right.
- Many optimisations have been made in Cavalry 2.0. Speed improvements will be dependent on the Scene but on average you can expect to see ~200% increase in playback speed. Performance improvements will be most noticeable in complex scenes where we have observed up to ~600% speed improvements. Simple Scenes should see at least a 10% improvement in playback performance.
- Opening large Scenes is now much faster. In our tests a 2000 Layer Scene load time is now ~22x faster.
- Selecting large numbers of Layers is now ~100x faster.
重要 Bug 修復
标题为“重要 Bug 修復”的章节- Count for Per Contour is working as expected again for the Path Distribution.
- Path Offset is now correctly handling holes again.
- Holding Option/Alt + dragging to duplicate a Shape when the Select tool is set to ‘Individual’ no longer causes double transforms.
- MP4 and WebM movies are now loading via the Image Cache which means they use far less RAM when loaded.
- Fixed a bug when double clicking in the Graph Editor to create new keyframes.
- When copying Layers that are connected to the Composition by default (e.g. a Composition Constraint is connected to Resolution) to a different Composition, those Layers will be connected to the new Composition’s attributes.
- Fixed a bug when making connections from an Animation Control via the Scene Window pop-up menu.
- Render Tokens using Custom Time Formats which included / or : as separators (e.g.
<%X>) now use -. - Viewport decorators (e.g. FPS) no longer draw when using Viewport Caching.
- The ‘New Beta Available’ pill should only appear if there actually is a beta newer than the one currently installed available.
- Shapes using Blend Modes no longer blend with the Composition’s checkerboard.
- Input connections from a Spreadsheet’s Row Count can now be accessed from the attribute it is connected to.
- The Fast Blur Filter no longer clips the Y axis.
- Fixed Spacers no longer break Layout Groups.
- Caching for Forge Dynamics simulations has been fixed.
- The Reverse Animation command is now working again.
- Character Spacing for centre and right aligned Text now works as expected.
- When adding Time Remapping to Pre-Comps which are offset in time, the keyframes are now correctly placed at the start/end of the Pre-Comp.
- A crash caused when an image sequence was found at the root of an Image Smart Folder has been fixed.
- Fixed an issue in the macOS Save dialogue where hitting Return after quitting Cavalry with an unsaved Scene open was not respecting the default (Save) option.