emby

Crates.ioemby
lib.rsemby
version0.0.5-rc.2
created_at2025-02-03 23:37:18.664554+00
updated_at2025-02-03 23:37:18.664554+00
descriptionthe beetmash ambassador
homepage
repositoryhttps://github.com/mrchantey/beet
max_upload_size
id1541225
size4,276
Pete Hayman (mrchantey)

documentation

https://bevyhub.dev/docs/beet

README

beet

A modular behavior library for the Bevy Engine.

Crates.io version Download docs.rs docs

Guidebook | API Docs

Beet is behavior expressed as entity trees, using Observers for control flow. The entity-based approach is very flexible and allows for multiple behavior paradigms to be used together as needed.

Currently implemented paradigms:

Hello World

use bevy::prelude::*;
use beet::prelude::*;

// A demonstration of Sequence control flow
world.spawn(SequenceFlow)
	.with_child((
		Name::new("Hello"),
		EndOnRun::success(),
	))
	.with_child((
		Name::new("World"),
		EndOnRun::success(),
	))
	.trigger(OnRun);

Examples

The examples for beet are scene-based, meaning each example provides a scene for a common base app. As Bevy scene workflows are a wip, there are a few Placeholder types used for not-yet-serializable types like cameras, asset handles etc.

Most examples rely on assets that can be downloaded with the following commands, or manually from here.

curl -o ./assets.tar.gz https://bevyhub-public.s3.us-west-2.amazonaws.com/assets.tar.gz
tar -xzvf ./assets.tar.gz
rm ./assets.tar.gz

Bevy Versions

bevy beet
0.15 0.0.4
0.14 0.0.2
0.12 0.0.1

TODO

  • When we get OnMutate observers, they should probably replace most OnInsert observers we're using
Commit count: 1391

cargo fmt