bevy_wasm_scripting
Adds support for wasm/wat assets in Bevy, and enables easy scripting. This is enabled through the wasmer crate.
- Prepare for public use. This is very experimental! Please share any feedback in the Bevy Discord!
- Scripts managed through bevy asset management
- Scripts attached to components
- Scripts attached to resources
- Hot-reloading of component- and resource-based scripts
- Basic examples
- Harmonize resource- and component-based scripts, as they could both be simpler to define.
- Put this through its paces with a game project, to find pain points
- Confirm safety of
WorldPointer
imports strategy. - Investigate compilation performance and multi-threading options.
- Investigate memory usage.
- Investigate cooperation with web builds.
- Configuration for Wasmer Tunables.
- Configuration for Wasmer compiler. (The
Cranelift
compiler is currently hardcoded.) - Example game (probably a breakout clone with powerups)
- Rust -> wasm script example
- Lua -> wasm script example
- Other language examples?
Examples
For component-based scripts:
//
More examples, for hot reloading, resource-based scripts, and script imports, are available in the examples directory.
Web Build Example
You can run the breakout example, very similar to the bevy examples: