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

Blend Shapes imported through glTF are broken #32757

Closed
YannKervran opened this issue Oct 11, 2019 · 9 comments
Closed

Blend Shapes imported through glTF are broken #32757

YannKervran opened this issue Oct 11, 2019 · 9 comments

Comments

@YannKervran
Copy link

Godot version: 3.1.1.stable.official

OS/device including version: 5.2.0-2-amd64 #1 SMP Debian 5.2.9-2 Sid

Issue description:

I have made a small grass blades pack with Shape Keys in Blender. I have exported the result in glTF and everything is fine. I can check that the values are registered in the glTF file, as I can tweak and change the values in another glTF viewer, like https://gltf-viewer.donmccurdy.com/
On that website, I have for each blade my two Shape Keys, called Morph targets.

Capture d’écran_2019-10-11_22-44-59

When I import the glTF file in Godot, the resulting mesh is broken. (I show you there just one of the grass blades, for simplicity)

Capture d’écran_2019-10-11_22-46-47

The Blend Shapes are imported but it seems that it has doubled the vertices and forget to adress the Blend Shapes correctly to some of them. If I put the Blend Shapes values to 0, eveything is fine, but if I try to rise them above 0, the mesh is broken, all faces become deconnected.

Capture d’écran_2019-10-11_22-47-06

Steps to reproduce:

  • import a glTF with Shape Keys from Blender / Morph targets
  • change the values of Blend Shapes above 0

Minimal reproduction project: I enclose my small glTF file here for testing purpose :
grass_pack.zip

@fire
Copy link
Member

fire commented Oct 11, 2019

Please try 3.2 alpha 2. It should be better there. I'll post a few exports in a few moments.

@fire
Copy link
Member

fire commented Oct 11, 2019

Blend Grass

@StraToN
Copy link
Member

StraToN commented Oct 12, 2019

@fire I am not able to get the same result as yours, neither on alpha 2 nor on current master.
Capture d’écran de 2019-10-12 18-25-30

Did you do something special in order to achieve this result?

@fire
Copy link
Member

fire commented Oct 12, 2019

I spun the camera around.

To make the material show for any angle, you can also turn "culling" to be disabled. Aka double sided materials.

I haven't checked if this is as specified in the glb file. Will reply in the next post.

@fire
Copy link
Member

fire commented Oct 12, 2019

I opened the glb in blender and export as gltf.

There is no materials array so:

https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#double-sided is not active. Therefore, the correct behaviour of one side-ness is correct.

@StraToN
Copy link
Member

StraToN commented Oct 12, 2019

I spun the camera around.

To make the material show for any angle, you can also turn "culling" to be disabled. Aka double sided materials.

The mesh displayed in Godot appears weird on my side (see my screenshot, it is all "exploded"), even with a Material set to all MeshInstances with Culling disabled, and turning the camera around does not change anything about that.

@fire
Copy link
Member

fire commented Oct 12, 2019 via email

@StraToN
Copy link
Member

StraToN commented Oct 15, 2019

@fire It seems related to #32766 yes. I effectively deleted the import file, then Godot reimported the gltf file and now it's appearing fine. Let's wait for OP to confirm, and eventually mark this one as duplicate?

@fire
Copy link
Member

fire commented Jan 9, 2020

Due to no reply in 2 weeks and we believe #32766 fixes the issue. Closing.

Thanks for your report!

@fire fire closed this as completed Jan 9, 2020
@akien-mga akien-mga added this to the 3.2 milestone Jan 9, 2020
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

5 participants