Releases: linebender/bevy_vello
Releases · linebender/bevy_vello
v0.6.1
v0.6.0
0.6.0 - 2024-08-09
This release supports Bevy version 0.14 and has an MSRV of 1.80.
Added
- There is now a
default_font
feature that uses the sameFiraMono-subset.ttf
font used in the bevy/default_font feature. - There is now a
render_layers
example. - There is now a
cube_3d
example. - You may now choose the render layers for the Vello canvas. This can be configured through the
VelloPlugin
. - You may now choose to use CPU rendering with Vello and configure anti-aliasing. This can be configured through the
VelloPlugin
. - Added the
SkipEncoding
component, which allows you to skip encoding any renderable asset without removing the asset.
Changed
VelloPlugin
now has configuration. To retain previous behavior, useVelloPlugin::default()
.VelloRenderer
is now a resource.- The
VelloRenderer
will attempt CPU fallback if it cannot obtain a GPU. - The font API has changed significantly. Please visit
examples/text
for further usage. This is to prepare for additional text features such as linebreak behavior, bounded text, and text justification.VelloText
has been renamed toVelloTextSection
.VelloText.content
has been renamed toVelloText.value
.- There is now a
VelloTextStyle
struct and it is a required field ofVelloText
. VelloFont
has been removed fromVelloTextBundle
and moved intoVelloTextStyle
.
- The field
VelloAssetBundle.vector
was renamed toVelloAssetBundle.asset
. - Renamed
VelloAssetAlignment
toVelloAssetAnchor
. Fields were renamedalignment
were renamed toasset_anchor
. - Renamed
VelloTextAlignment
toVelloTextAnchor
. Fields were renamedalignment
were renamed totext_anchor
. - The
SSRenderTarget
(fullscreen quad that renders your frame) no longer renders at a zepth of-0.001
. This was a legacy hack used to ensure Gizmos rendered on-top.RenderLayers
should be used now (there's an example).
Removed
- Removed
ZFunction
s from the render pipeline. Now ordering is based solely on theTransform
's z component. If you dependeded on this behavior, you'll need to adjust the transform Z in a system prior to render. VelloRenderPlugin
is now private, as it is not helpful for downstream developers to add manually.- Removed
VelloCanvasMaterial
from prelude, as it is not typical to use.
Fixed
- Text, assets, and scenes rendered will now correctly respect camera
RenderLayers
.
v0.5.1
0.5.1
Fixed
- Updated to patch vello 0.2.1. It is now no-longer possible to panic when the vello encodings are empty.
- The demo CI now deploys that bevy_pancam has been updated to bevy 0.14
Full Changelog: v0.5.0...v0.5.1
v0.5.0
0.5.0
Added
- New
scene_ui
example demonstrating aVelloScene
attached to abevy::ui::Node
.
Changed
- Updated to bevy 0.14
- Updated to vello 0.2
- Updated to velato 0.3
- Updated to vello_svg 0.3
Fixed
- Removed
Arc
in anotherArc
forVelloFont
- Opacity now correctly applies to SVG assets.
- Opacity now applies correctly to the lottie image group, rather than each element and path within it, causing overdraw.
VelloScene
components onbevy::ui::Node
entities now account for Bevy's UI layout systems and render at the expected viewport coordinates
Removed
- Pancam and/or egui from all examples besides the demo, as external dependencies can bottleneck upgrading to the next bevy version.
New Contributors
- @dannymcgee made their first contribution in #59
Full Changelog: v0.4.2...v0.5.0
v0.4.2
0.4.2
Fixed
- Updated to vello_svg v0.2.0, fixing viewboxes.
- Updates to velato v0.2.0, fixing viewboxes.
Full Changelog: v0.4.0...v0.4.2
v0.4.1 (Yanked)
0.4.1 (Yanked)
v0.4.0
0.4.0
Added
- New
svg
example - New
lottie
example
Changed
- The GitHub repo has migrated into the linebender org: https://github.com/linebender
- You may need to update your git ref from
loopystudios
tolinebender
- You may need to update your git ref from
- SVG and Lottie features are now feature-gated
- SVG (.svg) support is now added through a cargo feature
svg
. - Lottie (.json) support is now added through the cargo feature
lottie
. - experimental
dotLottie
features (LottiePlayer
,PlayerTransition
,PlayerState
) are now feature-gated through the cargo featureexperimental-dotLottie
. This is only partial support, and a work in progress. Theme
is now activated through thelottie
feature, as it was only possible to style runtime lotties.VelloAsset.metadata()
is no longer available, as it is specific to Lottie. There is now a trait,LottieExt
that can be imported to call.metadata()
on aComposition
instead. This is no longer fallible as a result.
- SVG (.svg) support is now added through a cargo feature
PlaybackAlphaOverride
was removed in favor of analpha
field onVelloAsset
.LottiePlayer
was renamed toDotLottiePlayer
.- Paths to several locations have changed, e.g.
bevy_vello::assets
->bevy_vello::integrations
Fixed
- A slow startup delay for lottie assets to begin rendering
- A dotLottie issue where the first frame can jump on web platforms.
New Contributors
- @AngeloMateus made their first contribution in #48
Full Changelog: v0.3.0...v0.4.0
v0.3.0
0.3.0 (2024-05-01)
added
VelloAssetAlignment
was added to theVelloAssetBundle
.
changed
VectorFile
enum variants were flattened into tuple structs.
removed
bevy_vello::VelloPlugin
was removed from the prelude.
Full Changelog: v0.2.0...v0.3.0
v0.2.0
0.2.0 (2024-04-17)
added
- Added the
VelloTextAlignment
component toVelloTextBundle
, which now helps control the alignment of text.
fixed
- Text bounding boxes are now tighter as they are capped by the baseline.
Full Changelog: v0.1.2...v0.2.0
v0.1.2
0.1.2 (2024-04-08)
fixed
- Fixes a window hang issue in bevy on native platforms
Full Changelog: v0.1.1...v0.1.2