https://github.com/komadori/bevy_mod_outline
https://github.com/komadori/bevy_mod_outline
Last synced: 11 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/komadori/bevy_mod_outline
- Owner: komadori
- License: apache-2.0
- Created: 2022-06-10T20:45:53.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2025-03-11T22:22:09.000Z (about 1 month ago)
- Last Synced: 2025-04-01T14:15:18.808Z (18 days ago)
- Language: Rust
- Size: 684 KB
- Stars: 141
- Watchers: 2
- Forks: 13
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
- awesome-bevy - `bevy_mod_outline`
README
# bevy_mod_outline
[](https://crates.io/crates/bevy_mod_outline)
[](https://docs.rs/bevy_mod_outline)
This crate provides a Bevy plugin for drawing outlines around meshes using the
vertex extrusion and jump flood methods.## Dependency
```toml
[dependencies]
bevy_mod_outline = "0.9"
```## Examples
A rotating cube and torus with opaque and transparent outlines.
```shell
cargo run --example shapes
```Multiple intersecting meshes sharing an outline plane. The outline stencil is offset to create
a gap between the object and its outline.```shell
cargo run --example pieces
```Many instances of the same mesh, with two different outline configurations, flying towards the
camera.```shell
cargo run --example flying_objects
```An outlined torus viewed through four cameras with different combinations of render layers
enabled.```shell
cargo run --example render_layers
```An animated jointed glTF model with an outline.
```shell
cargo run --example animated_fox
```A glTF model with pre-baked outline normals.
```shell
cargo run --example hollow
```An animated morphing glTF model with an outline.
```shell
cargo run --example morph_targets
```A pair of spheres, one outlined, with a UI for selecting different anti-aliasing modes.
```shell
cargo run --example ui_aa
```An outlined non-manifold shape, with a UI for selecting different outlining methods and shapes.
```shell
cargo run --example ui_mode
```An emissive sphere orbits another sphere, with outlines and HDR bloom post-processing.
```shell
cargo run --example bloom
```A flat square with a pulsing jump-flood outline masked by a checkerboard alpha pattern.
```shell
cargo run --example alpha_mask
```## Versions
| This Version | Bevy version |
|--------------|--------------|
| 0.9.x | 0.15.x |
| 0.8.x | 0.14.x |
| 0.7.x | 0.13.x |
| 0.6.x | 0.12.x |
| 0.5.x | 0.11.x |
| 0.4.x | 0.10.x |
| 0.3.x | 0.9.x |
| 0.2.x | 0.8.x |
| 0.1.x | 0.7.x |## Features
- `flood` _(default)_ Enable support for the jump flood algorithm.
- `interpolation` _(default)_ - Define `Lerp` trait impls using the
`interpolation` crate.
- `reflect` _(default)_ Define `Reflect` trait impls for the components.
- `scene` _(default)_ Enable the `AsyncSceneInheritOutline` component.## Licence
This crate is licensed under the Apache License, Version 2.0 (see
LICENCE-APACHE or ) or the MIT
licence (see LICENCE-MIT or ), at your
option.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.