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

Importing glb with Octahedral Compression distorts normals for blend shape with 50% weight #55633

Closed
Tracked by #63198
tobymckoi opened this issue Dec 5, 2021 · 4 comments

Comments

@tobymckoi
Copy link

Godot version

3.4-stable

System information

Windows 10, NVIDIA GTX 1060, GLES3

Issue description

I discovered this issue while debugging a visual problem with an animation. Screenshots below show a single mesh duplicated 3 times and with 0%, 50% and 100% blend shape weight applied, with a normal map shader.

When importing the .glb with octahedral compression (the default):
godot_octa_bug_01

When importing the .glb without octahedral compression:
godot_octa_bug_02

Steps to reproduce

Import the .glb file provided in the project with Octahedral Compression enabled. Play with the Blend Shape slider to see the visual artifact. You may need to rotate the object because the normals appear to be calculated correctly on one side. Also find a Godot scene that demonstrates the visual error in the .zip.

Minimal reproduction project

Minimal Project: godot_octanormal_issue.zip

@Calinou
Copy link
Member

Calinou commented Dec 5, 2021

cc @The-O-King

@mbrlabs
Copy link
Contributor

mbrlabs commented Dec 5, 2021

Maybe related: #54763
Looks similar, but only occurs on certain Android devices.

@The-O-King
Copy link
Contributor

I've gotten a chance to finally take a look at this and I think the issue is that the transform feedback loop used to generate the final blend shape does not take into account the different vertex attribute layout used when using octahedral compression - I'm currently working on a fix for this, i'll update once I have it done!

@akien-mga
Copy link
Member

Fixed by #56161.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants