Skip to content

render app: Added stages get ignored #6990

@dcz-self

Description

@dcz-self

Bevy version

0.9.1

What you did

The use case (same as #6989): I want to have a uniform which is created based on 2 separate sets of extracted data. I'm bound on one side by the Extract stage where the extraction takes place, and the Prepare stage, where the instantiated uniform is written to the buffer via UniformComponentPlugin.

There is no stage between them. Adding a stage results in the system not running:

use bevy::prelude::*;
use bevy::render::{RenderApp, RenderStage};

fn main() {
    let mut app = App::new();
    app.add_plugins(DefaultPlugins);
    let render_app = app.get_sub_app_mut(RenderApp).unwrap();
    render_app
        .add_stage_after(RenderStage::Extract, "combine", SystemStage::single(system));
    app.run();
}


fn system() {
    println!("I want to break free");
}

What went wrong

Expected: the system runs.

Actual: nothing gets printed.

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