#graphics #bevy-material #bevy

bevy_normal_material

Simple normal material for Bevy

11 releases (7 breaking)

0.10.0 Mar 9, 2026
0.8.0 May 8, 2025
0.7.1 Dec 20, 2024
0.6.0 Sep 25, 2024
0.1.1 Nov 18, 2022

#398 in Game dev


Used in 3 crates

MIT license

30KB
112 lines

Bevy Normal Material

crates.io

Simple normal material for Bevy.

Example

Usage

System setup

Add the plugin to your app:

use bevy::prelude::*;
use bevy_normal_material::prelude::*;

fn main() {
    App::new()
        .add_plugins(NormalMaterialPlugin);
}

Apply a material to a mesh

fn setup(
    mut commands: Commands,
    mut meshes: ResMut<Assets<Mesh>>,
    mut materials: ResMut<Assets<NormalMaterial>>,
) {
    commands.spawn((
        Mesh3d(meshes.add(Mesh::from(Cuboid::default()))),
        MeshMaterial3d(materials.add(NormalMaterial::default())),
    ));
}

Compatibility

bevy bevy_normal_material
0.9 0.1
0.10 0.2
0.11 0.3
0.12 0.4
0.13 0.5
0.14 0.6
0.15 0.7
0.16 0.8
0.18 0.10

Dependencies

~64–105MB
~2M SLoC