Tiled utilities and an AssetLoader for the Bevy game engine.
[!CAUTION] There are still quite a few bugs, missing / un-intuitive functionality, missing docs, etc. Please report any / all issues you encounter !
[!NOTE] Colliders are generated by marking the object with a
bool
property calledcollider
, and setting it totrue
[!NOTE] Objects in a Tile via their Tileset spawn Children Entities of the Parent Tile Entity. This is the case for both Tiles in a TileLayer and Tile Objects
ObjectType::Tile
.
[!NOTE] Polygon colliders are generated using convex_hull. Eventually some method of distinguishing how to generate colliders can be used.
Features
- Parse Group, Tile, and Object layers, Tile and object properties.
- Loads the scene into Bevy.
- Generate Tiled Colliders as bevy_rapier2d or avian2d Colliders.
Documentation
Bevy Usage Example
Add bevy_tiled_loader
to Cargo.toml
:
# For 2D applications:
[]
= { = "*", = "avian2d_colliders"} # You should explicitly set the version.
Add the plugin and load a *.tmx
:
app.add_plugins
// ...
Also, see load_tiled_components which shows how to extract properties from Tiled objects.
Supported Bevy Versions
Bevy | My Tiled Loader |
---|---|
0.16 | 0.2 |
0.15 | 0.1 |
Future Features
- Settings to control how the
*.tmx
is parsed and how / what gets generated. - Migrate to Bincode 2
Contributing
If you encounter any problems, feel free to open issues or create pull requests.
Acknowledgements
Bevy is awesome.