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

Decode octahedral compression when retrieving meshes #65804

Merged
merged 1 commit into from
Sep 14, 2022

Conversation

clayjohn
Copy link
Member

Fixes: #65657

This also fixes a few unreported bugs including generating UV2 for lightmaps was broken. Essentially any engine functionality that relied on reading meshes from the GPU were broken.

This was a regression introduced by #60309. #60309 added code to encode normals and tangents to octahedral format before sending to the GPU, but it did not add the code to decode when data is read from the GPU.

The solution is to just decode the normals and tangents when they are being compiled into mesh surface arrays

@clayjohn clayjohn added this to the 4.0 milestone Sep 14, 2022
@clayjohn clayjohn requested a review from a team as a code owner September 14, 2022 23:08
@akien-mga akien-mga merged commit f11745d into godotengine:master Sep 14, 2022
@akien-mga
Copy link
Member

Thanks!

@clayjohn clayjohn deleted the octahedral-decode branch September 14, 2022 23:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

GLTF2 export failure with octahedron normals
2 participants