Skip to content

Emissive materials not displayed properly when imported from gltf files #13133

@Overblob

Description

@Overblob

Bevy version

0.13

Relevant system information

`AdapterInfo { name: "NVIDIA GeForce GTX 970", vendor: 4318, device: 5058, device_type: DiscreteGpu, driver: "NVIDIA", driver_info: "550.67", backend: Vulkan }`

What you did

Load a gltf (glb) scene using materials for bloom effect, and using KHR_materials_emissive_strength extension (supported since 0.12: #9553 )
Specifically the glb file used for this test:
https://github.com/KhronosGroup/glTF-Sample-Models/tree/main/2.0/EmissiveStrengthTest

What went wrong

  • what were you expecting?
    Bloom shall be displayed properly, as showed in the previous link

  • what actually happened?
    No bloom at all

Additional information

Seems to be a regression since 0.12 as it worked properly initially:

From v0.12.0
image

From v0.13.0
image

Edit : if the background seems brighter for v0.13 it's because the code uses the default exposure, which changed for this version, but as far as I can tell, this as no direct relation with the bloom issue (I tested the different const exposure values from the API)

Edit 2: minimal code to reproduce the issue:

use bevy::{core_pipeline::bloom::BloomSettings, prelude::*};

fn main() {
    App::new()
        .add_plugins(DefaultPlugins)
        .add_systems(Startup, setup)
        .run();
}

fn setup(mut commands: Commands, asset_server: Res<AssetServer>) {
    commands.spawn((
        Camera3dBundle {
            camera: Camera {
                hdr: true,
                ..default()
            },
            transform: Transform::from_xyz(0.0, 6., 12.0)
                .looking_at(Vec3::new(0., 1., 0.), Vec3::Y),
            ..default()
        },
        BloomSettings::default(),
    ));

    commands.spawn((SceneBundle {
        scene: asset_server.load("EmissiveStrengthTest.glb#Scene0"),
        ..default()
    },));
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-RenderingDrawing game state to the screenC-BugAn unexpected or incorrect behavior

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions