Skip to content

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

3D Graphics Tracker #4629

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

Closed
1 of 50 tasks
NHodgesVFX opened this issue Apr 28, 2022 · 8 comments
Closed
1 of 50 tasks

3D Graphics Tracker #4629

NHodgesVFX opened this issue Apr 28, 2022 · 8 comments
Labels
A-Rendering Drawing game state to the screen C-Tracking-Issue An issue that collects information about a broad development initiative

Comments

@NHodgesVFX
Copy link

NHodgesVFX commented Apr 28, 2022

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

  • Support Refraction
  • Support KHR_materials_volume
  • Support KHR_materials_transmission
  • Support KHR_materials_ior
  • SubSurface Scattering (SSS)
  • Alpha to Coverage
  • Parallax Occlusion Mapping With Shadowing (POM)
  • Tessellation and Displacement

Import

  • Auto Mip Map Generation
  • Auto UV Generation
  • Auto Normal Generation
  • Auto Tangent Generation
  • Acsii Embedded GTLF Support

Occlusion

  • Screen Space Ambient Occlusion (SSAO)
  • Ground Truth Ambient Occlusion (GTAO)
  • RayTraced Ambient Occlusion (RTAO)
  • Bent Normals

Global Illumination

  • Screen Space Global Illumination (SSGI)
  • Voxel Global Illumination (VXGI)
  • SDF Global Illumination (SDFGI)
  • Lightmaps
  • Directional Lightmaps
  • Light Probes
  • RayTraced Global Illumination (RTGI)

Lights

Shadows

  • Cascaded Shadow Mapping
  • Percentage Closer Filtering (PCF)
  • Percentage Closer Soft Shadows (PCSS)
  • RayTraced Shadows

Effects

  • Fast approximate anti-aliasing (FXAA)
  • Subpixel Morphological Antialiasing (SMAA)
  • Temporal Anti-Aliasing (TAA)
  • Bloom
  • Tone Mapping
  • Depth Of Field
  • Color Correction
  • Color Grading
  • Volumetric Lighting
  • Depth Fog

Animation

  • GPU Skinning

Optimizations

  • Occlusion Culling
  • Hardware Instancing

Additional context

Refraction

@NHodgesVFX NHodgesVFX added C-Feature A new feature, making something new possible S-Needs-Triage This issue needs to be labelled labels Apr 28, 2022
@alice-i-cecile alice-i-cecile added A-Rendering Drawing game state to the screen C-Tracking-Issue An issue that collects information about a broad development initiative and removed C-Feature A new feature, making something new possible S-Needs-Triage This issue needs to be labelled labels Apr 28, 2022
@alice-i-cecile
Copy link
Member

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
Copy link
Author

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
Copy link
Member

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
Copy link
Author

NHodgesVFX commented Apr 28, 2022

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
Copy link
Member

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
Copy link
Author

NHodgesVFX commented Apr 28, 2022

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

@cart
Copy link
Member

cart commented Apr 29, 2022

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
Copy link
Member

Yeah, I like this as a discussion too :)

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

Labels
A-Rendering Drawing game state to the screen C-Tracking-Issue An issue that collects information about a broad development initiative
Projects
None yet
Development

No branches or pull requests

4 participants