Skip to content
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

Ambient Occlusion #42

Open
Inspirateur opened this issue Oct 28, 2024 · 0 comments
Open

Ambient Occlusion #42

Inspirateur opened this issue Oct 28, 2024 · 0 comments
Labels
improvement Quality of life improvement

Comments

@Inspirateur
Copy link
Owner

Inspirateur commented Oct 28, 2024

Ambient Occlusion is the process of darkening areas that are less exposed to diffuse lighting because of the geometry (ex: the corners of a room). In our case it will be a separate process from Global Illumination, which will probably be very crudely approximated on a per-voxel basis.

Ambient Occlusion is much cheaper to get than any kind of GI and greatly enhances the visuals of the game. Minecraft bakes AO into the meshes, but that has the disadvantage of slowing down meshing time considerably and also outputting more quads.

I want to try bevy's SSAO, but it doesn't work outside the box because our Mesh data is compressed, so Bevy cannot find the vertex normals on its own. Thankfully I've been advised that it is still totally doable, I just need to run my own Depth and Normal prepass with custom shaders that will give a correct output to Bevy.

@Inspirateur Inspirateur added the improvement Quality of life improvement label Oct 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
improvement Quality of life improvement
Projects
None yet
Development

No branches or pull requests

1 participant