Bevy Fast Light
Simple 2D lighting for Bevy focused on performance over features.
:warning: | This is still in development and not at all feature complete.
Features
Lights
| Purpose | Component | Config |
|---|---|---|
| Ambient light | AmbientLight2d |
color and intensity |
| Point light | PointLight2d |
color, intensity, inner_radius and outer_radius |
Occluders
| Purpose | Component | Config |
|---|---|---|
| Light occluder | Light2dOccluder |
Attached Mesh2d determines shape |
Sprites are rendered above occluders if they are on the same or a higher z-level. Also see Showcase.
Limitations
- There is currently no shadow casting for light occluders.
Usage
Take a look at /examples to find out how to use this crate.
Showcase
I am using most features in my learning project Slimy Mist and have also successfully implemented a day/night cycle.
This also visualizes how Sprites are rendered above occluders if they are on the same or a higher z-level.
Examples
ambient_light.rs
Scene with a light sky colored AmbientLight2d with a lower intensity, a green Rectangle as background and an amber PointLight2d.
occluder.rs
Scene with a light sky colored AmbientLight2d with a lower intensity, a green Rectangle as background, an amber PointLight2d and a Light2dOccluder.
point_light.rs
Scene with a green Rectangle as background and an amber PointLight2d.
texture_scale.rs
Scene with a green Rectangle as background and an amber PointLight2d using a lower texture_scale.