bevyengine / bevy

A refreshingly simple data-driven game engine built in Rust
https://bevyengine.org
Apache License 2.0
36.67k stars 3.61k forks source link

3D Graphics Tracker #4629

Closed NHodgesVFX closed 2 years ago

NHodgesVFX commented 2 years ago

What problem does this solve or what need does it fill?

I looked through the issues and didn't see any open issues that would give an large overview of needed missing 3D graphics features in Bevy. So, I though I would create this tracker that could remain open and have items ticked of as they are added. Some features have multiple implementations that are possible, although it would be nice to have them all, I think it would be good to start with the easiest to implement in most cases. I am also sure I am forgetting some needed features as well, feel free to add them in the comments or if you have permission add them directly to this post. If this type of issue isnt wanted please feel free to close it :)

What solution would you like?

Reflections

Materials

Import

Occlusion

Global Illumination

Lights

Shadows

Effects

Animation

Optimizations

Additional context

Refraction

alice-i-cecile commented 2 years ago

This is an excellent list. I'll defer to @superdump, our rendering lead, for the best format for this.

You may also be interested in the rendering project board, which is a more operational view of the work that's being done.

NHodgesVFX commented 2 years ago

Thanks for the board its really interesting, I had found some of those issues just by searching but their are quite a few I didn't see before.

alice-i-cecile commented 2 years ago

If you have the expertise @NHodgesVFX, PR reviews from the community are incredibly valuable to help contributors learn and enable us to merge in features faster. This is especially true in rendering, where the team's expertise can often run a bit thin.

NHodgesVFX commented 2 years ago

Thanks, However I don't really have the expertise, I'm pretty new to rust and graphics programming. But maybe I will have the expertise sometime in the future :)

james7132 commented 2 years ago

We're already skinning on the GPU. Unless the suggestion is to use bindless rendering to skin meshes, we're already doing this.

Animation blending and morph target work is already being tracked by #4026.

NHodgesVFX commented 2 years ago

I updated the list to reflect that, didn't realize skinning was already done on the GPU.

cart commented 2 years ago

Great list! I do think this feels more like Github Discussion territory rather than formal tracking issue territory. "3D graphics features" is a nebulous, large, and ever-changing area that we will never really be able to drive down to zero and close out. Any objections to me converting this to a discussion? You can still use this to track progress, but issues should be "scoped, well defined, and with clear paths to resolution".

alice-i-cecile commented 2 years ago

Yeah, I like this as a discussion too :)