nannou-org / nannou

A Creative Coding Framework for Rust.
https://nannou.cc/
5.89k stars 301 forks source link

Bevy Plugin Rework [Tracking Issue] #953

Open mitchmindtree opened 5 months ago

mitchmindtree commented 5 months ago

This issue tracks progress on the re-orientation of nannou as a suite of creative-coding oriented bevy plugins.

For comments/thoughts on general direction, feel free to comment below!

tychedelia commented 5 months ago

A big question is how closely we are able to integrate with bevy's existing pbr mesh/material pipeline, or whether we need to implement and maintain our own rendering code for more control. There are tradeoffs to both, but right now we're going to proceed with porting our existing renderer over in #954, with the understanding that we can incrementally remove this in favor of bevy's native meshes more easily once the draw api is better integrate with bevy.

alice-i-cecile commented 4 months ago

Let us know if you run into any difficulties integrating: Bevy's existing rendering code is not as easy to work with as I would like so feedback from users is really valuable.

tychedelia commented 4 months ago

Let us know if you run into any difficulties integrating: Bevy's existing rendering code is not as easy to work with as I would like so feedback from users is really valuable.

Thanks, Alice! We're really excited and approaching this project with the hopes of becoming more closely aligned with the broader Bevy ecosystem, and want to contribute back as much as possible. Bevy's already a great platform for building on top of, but creative coding has some unique needs that will hopefully enrich the engine. We'll maybe do a more formal intro on the Discord at some point, but are super excited about opportunities for collaboration here. 🧡

luca-aurelia commented 4 months ago

Excited to see this direction! As a longtime Nannou user I was honestly a bit anxious that Nannou was done for. Thanks again to everyone who's put so much time and thought into Nannou — it's given me countless hours of joy.

In case it's useful, Raph Levien's Vello project (a GPU-accelerated 2d renderer) has a Bevy integration: https://github.com/linebender/vello/blob/main/examples/with_bevy/src/main.rs