Expand description

This crate provides a Bevy plugin, OutlinePlugin, and associated components for rendering outlines around meshes using the vertex extrusion method.

Outlines are rendered in a seperate pass following the main 3D pass. The effect of this pass is to present the outlines in depth sorted order according to the model translation of each mesh. This ensures that outlines are not clipped by other geometry.

The Outline component will, by itself, cover the original object entirely with the outline colour. The OutlineStencil component must also be added to prevent the body of an object from being filled it. This must be added to any entity which needs to appear on top of an outline.

Vertex extrusion works best with meshes that have smooth surfaces. To avoid visual artefacts when outlining meshes with hard edges, see the OutlineMeshExt::generate_outline_normals function and the AutoGenerateOutlineNormalsPlugin.

Structs

A component for rendering outlines around meshes.
A bundle for rendering stenciled outlines around meshes.
Adds support for rendering outlines.
A component for stenciling meshes during outline rendering.

Enums

Failed to generate outline normals for the mesh.

Constants

The direction to extrude the vertex when rendering the outline.
Name of the render graph node which draws the outlines.

Traits

Extension methods for [Mesh].