bevy_mod_outline

This crate provides a Bevy plugin for drawing outlines around meshes using the vertex extrusion and jump flood methods.
Dependency
[]
= "0.13"
Examples
A rotating cube and torus with opaque and transparent outlines.
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.
cargo run --example pieces
Many instances of the same mesh, with two different outline configurations, flying towards the camera.
cargo run --example flying_objects
The camera rotates around a large mesh which clips different parts of the frustum.
cargo run --example orbiting_wall
An outlined torus viewed through four cameras with different combinations of render layers enabled.
cargo run --example render_layers
An animated jointed glTF model with an outline.
cargo run --example animated_fox
A glTF model with pre-baked outline normals.
cargo run --example hollow
An animated morphing glTF model with an outline.
cargo run --example morph_targets
A pair of spheres, one outlined, with a UI for selecting different anti-aliasing modes.
cargo run --example ui_aa
An outlined non-manifold shape, with a UI for selecting different outlining methods and shapes.
cargo run --example ui_mode
An emissive sphere orbits another sphere, with outlines and HDR bloom post-processing.
cargo run --example bloom
A flat square with a pulsing jump-flood outline masked by a checkerboard alpha pattern.
cargo run --example alpha_mask
A set of shapes which can be selected by (shift-)clicking on them.
cargo run --example picking
Versions
| This Version | Bevy version |
|---|---|
| 0.13.x | 0.19.x |
| 0.12.x | 0.18.x |
| 0.11.x | 0.17.x |
| 0.10.x | 0.16.x |
| 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) - DefineLerptrait impls using theinterpolationcrate.reflect(default) DefineReflecttrait impls for the components.world_serialisation(default) Enable theAsyncWorldInheritOutlinecomponent.
Licence
This crate is licensed under the Apache License, Version 2.0 (see LICENCE-APACHE or http://www.apache.org/licenses/LICENSE-2.0) or the MIT licence (see LICENCE-MIT or http://opensource.org/licenses/MIT), 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.