jMonkeyEngine / jmonkeyengine

A complete 3-D game development suite written in Java.
http://jmonkeyengine.org
BSD 3-Clause "New" or "Revised" License
3.74k stars 1.12k forks source link

jme3-plugins loads MorphPrimitivesTest incorrectly #2110

Open stephengold opened 9 months ago

stephengold commented 9 months ago

I noticed a defect in GltfLoader while developing the MonkeyWrench library.

The test data is MorphPrimitivesTest from Khronos's glTF sample models.

Here's how it looks in CompareLoaders when "MorphPrimitivesTest/glTF/MorphPrimitivesTest.gltf" is loaded using jme3-plugins:

MorphPrimitivesTest

I believe the best approach to solve this issue will be:

  1. Add a MorphControl to every model with morph targets, even if there are no animation tracks.
  2. Initialize the morph state of each Geometry by invoking setMorphState() with the "weights" values in the glTF.
riccardobl commented 8 months ago

Is this fixed by https://github.com/jMonkeyEngine/jmonkeyengine/pull/2109 ?

codex128 commented 8 months ago

No, I've already tried MorphPrimitivesTest with #2109 and it still fails. I suspect this is because the gltf file does not explicitly define animations (unlike the MorphStressTest gltf).