Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge vellottie #13

Merged
merged 43 commits into from
Mar 22, 2024
Merged
Show file tree
Hide file tree
Changes from 18 commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
def4ff0
fix: licenses
simbleau Mar 9, 2024
b8c83a0
docs: update README
simbleau Mar 9, 2024
1375b22
docs: authors
simbleau Mar 10, 2024
ce3c007
ci: initial CI
simbleau Mar 10, 2024
b9c439f
refactor: merge vellottie
simbleau Mar 10, 2024
5df4075
feat: examples
simbleau Mar 10, 2024
1b4322d
refactor: rename schema `Lottie` to `Animation`
simbleau Mar 10, 2024
c9a3e1c
build: fix copyright headers
simbleau Mar 10, 2024
86fb77a
fix: wasm compile
simbleau Mar 10, 2024
7142727
build: ignore example assets
simbleau Mar 10, 2024
9c0b79b
ci: remove release workflow
simbleau Mar 10, 2024
47a8a0f
build: switch demo update to push on main
simbleau Mar 11, 2024
867ca73
build: remove unnecessary items
simbleau Mar 11, 2024
6409e34
Update .gitignore
simbleau Mar 11, 2024
15ae080
fix: authors
simbleau Mar 11, 2024
2682d11
fix: .gitignore
simbleau Mar 11, 2024
b7b5de7
fix: remove trunk
simbleau Mar 11, 2024
00e32d8
Update .github/workflows/ci.yml
simbleau Mar 11, 2024
7db7178
fix: authors
simbleau Mar 11, 2024
ee7089d
docs: update badge
simbleau Mar 11, 2024
9ddcee5
docs: update
simbleau Mar 11, 2024
6166d6f
docs: update
simbleau Mar 11, 2024
f646342
build: add tiger license
simbleau Mar 11, 2024
4ace287
Update examples/scenes/Cargo.toml
simbleau Mar 11, 2024
19c4cc5
feat: remove wgpu badge
simbleau Mar 11, 2024
0aa52fc
fix: remove RUSTFLAGS
simbleau Mar 11, 2024
99ecb99
Update examples/with_winit/Cargo.toml
simbleau Mar 11, 2024
a971f1f
docs: remove license
simbleau Mar 11, 2024
e5442a8
docs: update
simbleau Mar 11, 2024
bff269d
Update Cargo.toml
simbleau Mar 13, 2024
98d33b4
Update Cargo.toml
simbleau Mar 13, 2024
5437119
docs: update
simbleau Mar 13, 2024
1c28b1d
fix: newline
simbleau Mar 13, 2024
446d4cf
build: match text in vello
simbleau Mar 13, 2024
07fbe42
fix: move tiger to CC-BY dir
simbleau Mar 13, 2024
4809b9f
feat: google_noto_asset macro
simbleau Mar 13, 2024
219b546
Update Cargo.toml
simbleau Mar 14, 2024
36d9937
fix: remove deprecated note
simbleau Mar 21, 2024
473f118
build: switch logic to f64
simbleau Mar 21, 2024
ca51bd4
refactor: switch to f64
simbleau Mar 21, 2024
57dd04b
refactor: rename trait to `Tween`
simbleau Mar 21, 2024
a892e5c
refactor: finalize merge comments
simbleau Mar 21, 2024
78b78cd
fix: skew logic
simbleau Mar 21, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/copyright.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,13 @@
# -g "!src/special_directory"

# Check all the standard Rust source files
output=$(rg "^// Copyright (19|20)[\d]{2} (.+ and )?the Vello Authors( and .+)?$\n^// SPDX-License-Identifier: Apache-2\.0 OR MIT$\n\n" --files-without-match --multiline -g "*.rs" .)
output=$(rg "^// Copyright (19|20)[\d]{2} (.+ and )?the Velato Authors( and .+)?$\n^// SPDX-License-Identifier: Apache-2\.0 OR MIT$\n\n" --files-without-match --multiline -g "*.rs" .)

if [ -n "$output" ]; then
echo -e "The following files lack the correct copyright header:\n"
echo $output
echo -e "\n\nPlease add the following header:\n"
echo "// Copyright $(date +%Y) the Vello Authors"
echo "// Copyright $(date +%Y) the Velato Authors"
echo "// SPDX-License-Identifier: Apache-2.0 OR MIT"
echo -e "\n... rest of the file ...\n"
exit 1
Expand Down
1 change: 0 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,6 @@ jobs:
- name: cargo clippy (all features) (auxiliary)
run: cargo clippy --workspace --tests --benches --examples --all-features -- -D warnings

# At the time of writing, we don't have any tests. Nevertheless, it's better to still run this
- name: cargo test
run: cargo test --workspace --all-features
env:
Expand Down
5 changes: 2 additions & 3 deletions .github/workflows/pages-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,8 @@ name: Web Demo Update

on:
push:
tags:
- 'v*'
workflow_dispatch:
branches:
- main

jobs:
release-web:
Expand Down
27 changes: 4 additions & 23 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,31 +2,12 @@
# More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html
Cargo.lock
simbleau marked this conversation as resolved.
Show resolved Hide resolved

examples/assets/*
# Don't commit example downloads
examples/assets/downloads/*

# Generated by Cargo
# will have compiled files and executables
target/

# Generated by Trunk
dist/

# These are backup files generated by rustfmt
**/*.rs.bk

# Some people use VSCode
/.vscode/

# Some people use IntelliJ with Rust
/.idea/
*.iml

# Some people use pre-commit
.pre-commit-config.yaml
.pre-commit-config.yml
/target

# Some people have Apple
.DS_Store

# Generated on wasm-pack failure
**/unsupported.js
.DS_Store
simbleau marked this conversation as resolved.
Show resolved Hide resolved
13 changes: 3 additions & 10 deletions AUTHORS
Original file line number Diff line number Diff line change
@@ -1,20 +1,13 @@
# This is the list of Vello's significant contributors.
# This is the list of Velato's significant contributors.
#
# This does not necessarily list everyone who has contributed code,
# especially since many employees of one corporation may be contributing.
# To see the full list of contributors, see the revision history in
# source control.
Google LLC
Raph Levien
Chad Brokaw
Arman Uguray
Elias Naur
Daniel McNab
Spencer C. Imbleau
Bruce Mitchener
Tatsuyuki Ishi
Markus Siglreithmaier
Rose Hudson
Brian Merchant
Matt Rice
Kaur Kuut
Sebastian Hamel
Kaur Kuut
1 change: 1 addition & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ edition.workspace = true
repository.workspace = true

[workspace.dependencies]
# Update the README badges to match wgpu and vello version!
simbleau marked this conversation as resolved.
Show resolved Hide resolved
vello = "0.1"
simbleau marked this conversation as resolved.
Show resolved Hide resolved
simbleau marked this conversation as resolved.
Show resolved Hide resolved

[dependencies]
Expand Down
33 changes: 27 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
[![Linebender Zulip](https://img.shields.io/badge/Linebender-%23gpu-blue?logo=Zulip)](https://xi.zulipchat.com/#narrow/stream/197075-gpu)
[![dependency status](https://deps.rs/repo/github/linebender/velato/status.svg)](https://deps.rs/repo/github/linebender/velato)
[![MIT/Apache 2.0](https://img.shields.io/badge/license-MIT%2FApache-blue.svg)](#license)
[![wgpu version](https://img.shields.io/badge/wgpu-v0.19-orange.svg)](https://crates.io/crates/wgpu)
[![vello version](https://img.shields.io/badge/vello-v0.1.0-purple.svg)](https://crates.io/crates/vello)

[![Crates.io](https://img.shields.io/crates/v/velato.svg)](https://crates.io/crates/velato)
Expand All @@ -17,11 +16,11 @@
</div>

> [!WARNING]
simbleau marked this conversation as resolved.
Show resolved Hide resolved
> The goal of this crate is to provide coverage of the large Lottie spec, up to what vello will support, for use in interactive graphics. We are working towards correctness, but there are several missing features. See [vello](https://github.com/linebender/vello) for more information about limitations.
> The goal of this crate is to provide coverage of the large Lottie spec, up to what vello can render, for use in interactive graphics. We are working towards correctness, but there are missing features listed below.

## Missing features

It is not currently feature complete, but is capable of rendering a large number of Lottie animations.
Several Lottie features are not yet supported, including:

simbleau marked this conversation as resolved.
Show resolved Hide resolved
- Non-linear easings
- Position keyframe (`ti`, `to`) easing
Expand All @@ -36,7 +35,7 @@ It is not currently feature complete, but is capable of rendering a large number

## Examples

### Native
### Cross platform (Winit)

```shell
cargo run -p with_winit
Expand All @@ -48,7 +47,7 @@ You can also load an entire folder or individual files.
cargo run -p with_winit -- examples/assets
```

### Web
### Web platform

Because Vello relies heavily on compute shaders, we rely on the emerging WebGPU standard to run on the web.
Until browser support becomes widespread, it will probably be necessary to use development browser versions (e.g. Chrome Canary) and explicitly enable WebGPU.
Expand All @@ -68,6 +67,28 @@ There is also a web demo [available here](https://linebender.github.io/velato) o
> [!WARNING]
> The web is not currently a primary target for Vello, and WebGPU implementations are incomplete, so you might run into issues running this example.

simbleau marked this conversation as resolved.
Show resolved Hide resolved
## Community

Discussion of Velato development happens in the [Linebender Zulip](https://xi.zulipchat.com/), specifically the [#gpu stream](https://xi.zulipchat.com/#narrow/stream/197075-gpu). All public content can be read without logging in.

Contributions are welcome by pull request. The [Rust code of conduct](https://www.rust-lang.org/policies/code-of-conduct) applies.

## License

This project is dual-licensed under both [Apache 2.0](LICENSE-APACHE) and [MIT](LICENSE-MIT) licenses.
Licensed under either of

- Apache License, Version 2.0
([LICENSE-APACHE](LICENSE-APACHE) or <http://www.apache.org/licenses/LICENSE-2.0>)
- MIT license
([LICENSE-MIT](LICENSE-MIT) or <http://opensource.org/licenses/MIT>)

at your option.

The files in subdirectories of the [`examples/assets`](/examples/assets) directory are licensed solely under
their respective licenses, available in the `LICENSE` file in their directories.

## Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in the work by you, as defined in the Apache-2.0 license, shall be
dual licensed as above, without any additional terms or conditions.
Loading