Bevy plugin for paperdoll, a 2D pixel-based stationary paper doll model.
Add the plugin to your app first.
```rust use bevy::prelude::*; use bevy_paperdoll::{PaperdollAsset, PaperdollPlugin};
fn main() { App::new() .add_plugins(PaperdollPlugin);
// Other logic
// ...
} ```
Then load a paperdoll file and store the handle. You can use ppd-editor to create a valid paperdoll asset.
```rust
fn loadpaperdoll(assetserver: Res
// Store the handle.
// ...
} ```
Create a paperdoll from the loaded asset and play with it.
```rust
fn createpaperdoll(
mut paperdolls: ResMut
// Create a paperdoll based on doll 0.
// The returned id will be used to refer to this paperdoll in the following process.
let paperdoll_id = paperdoll_asset.create_paperdoll(0);
// Do something with the paperdoll just created.
// eg. Set slot 0 to fragment 1
// paperdoll_asset.slot_use_fragment(paperdoll_id, 0, 1);
// eg. Set slot 1 to empty
// paperdoll_asset.slot_use_empty(paperdoll_id, 1);
// Get the image to be drawn on the screen.
let paperdoll_image = paperdoll_asset.take_texture(paperdoll_id).unwrap();
} ```
See examples for more.
| bevy | bevy-paperdoll | | ---- | -------------- | | 0.11 | 0.1 |