Skip to content

🧪 Create bevy_render_2d crate #18467

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 13 commits into
base: main
Choose a base branch
from

Conversation

hukasu
Copy link
Contributor

@hukasu hukasu commented Mar 21, 2025

Objective

Work for #18423

Solution

Create bevy_render_2d crate and pull relevant code out of bevy_sprite

Testing

Not enough

Todo

  • Refactor bevy_render_2d::mesh_pipeline
  • Update migration guide with paths of moved symbols

Copy link
Contributor

You added a new feature but didn't update the readme. Please run cargo run -p build-templated-pages -- update features to update it, and commit the file change.

@hukasu hukasu marked this pull request as ready for review March 22, 2025 01:30
@IceSentry IceSentry added A-Rendering Drawing game state to the screen C-Dependencies A change to the crates that Bevy depends on S-Needs-Review Needs reviewer attention (from anyone!) to move forward labels Mar 22, 2025
@IceSentry
Copy link
Contributor

This is a split I want to see, but I'm not sure if we should do it now or wait until 0.16 is released.

@hukasu
Copy link
Contributor Author

hukasu commented Mar 22, 2025

@IceSentry while I was doing this split I was wondering if wireframe should be a crate, it is not really infrastructure for creating materials to be included in bevy_render_2d

The were some changes to system ordering too that needs some verification

@IceSentry
Copy link
Contributor

Yes-ish. All the wireframe material thing is currently broken and needs to be rewritten to use it's own phase. @tychedelia is working on this. Once it's done, then it could be a separate crate, but I think it should probably live in bevy_render for a bit. I don't think wireframes would cause compilation speed issues and if you want to render wireframe you'll need to use bevy_render anyway.

@tychedelia
Copy link
Contributor

Let's definitely wait until after 0.16 and try to get these done expediently as a first task so we don't get stuck in rebase hell. Haven't reviewed the concrete changes yet but thank you for tackling this.

@hukasu hukasu force-pushed the extract-color-material branch from 5e856ac to e80a350 Compare March 22, 2025 23:07
@hukasu hukasu changed the title Create bevy_render_2d and bevy_color_material crates Create bevy_render_2d crate Mar 22, 2025
@hukasu
Copy link
Contributor Author

hukasu commented Mar 22, 2025

@tychedelia TLDR: Moved bevy_sprite::mesh2d::mesh.rs and bevy_sprite::mesh2d::material.rs to bevy_render_2d::mesh_pipeline and bevy_render_2d::materials respectively + refactor to my taste

@hukasu hukasu force-pushed the extract-color-material branch from cedc832 to c3bfb13 Compare March 23, 2025 03:38
@IceSentry IceSentry added this to the 0.17 milestone Mar 25, 2025
@IceSentry IceSentry added the S-Blocked This cannot move forward until something else changes label Mar 25, 2025
@IceSentry
Copy link
Contributor

We do want this change but this will have to wait until 0.17

@hukasu hukasu changed the title Create bevy_render_2d crate 🧪 Create bevy_render_2d crate Apr 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-Rendering Drawing game state to the screen C-Dependencies A change to the crates that Bevy depends on S-Blocked This cannot move forward until something else changes S-Needs-Review Needs reviewer attention (from anyone!) to move forward
Projects
Status: No status
Development

Successfully merging this pull request may close these issues.

4 participants