Hi! Dark_Photon. Thanks for your reply. I know my description was vague, to say the least. It was rushed out.
Let me tell you more about this project.
This is a mobile web-based AR project for a client of ours.
We used the following libraries:
During our development phase, while waiting for a third party provider to deliver the final assets, we used the “ Cessium Man ” GLTF file. The AR experience with that file worked perfectly on every device we tested it.
When we finally received the GLTF asset, we used Don McCurdy’s GLTF viewer to view the resulting animations.
The files were generated using Sketchfab’s plugin for Maya.
It has two clips. One with the “idle” animation and another with the main acting.
The main acting features one of the characters singing while playing the piano and another using the lighter like in a concert.
The export was in binary format with the json and textures in a separate folder.
Even though the file presented errors, the animation played without problems and we didn’t think much of it at the moment.
We continued testing with the asset and nothing led us to think that there was a problem. That was until we tested it on a Samsung Galaxy J7 Prime and found out that the animation didn’t load correctly.
Basically what happened was that the scene, composed of two characters, a piano and a lighter would load up wrong. All the assets appeared centered in the scene and the characters in T pose.
When trying to play the animation, the only object that would animate the way it supposed to, was the lighter.
Further testing the issue we found out that the issue before mentioned only happened on devices running different versions of the MALI GPU.
Trying to narrow down the problem we asked the provider that sent us the assets, to produce several GLTF files with different characteristics.
We asked for only one of the characters with:
- Full animation cycle.
- No facial expressions and keeping the rest of the animation cycle.
- Only facial expressions.
None of these assets worked. We had the same result as with the main asset.
We asked the provider to try a different tool to create the GLTF file. We suggested this exporter
However, the file generated with that exporter didn’t work altogether on any device. The GLTF validator threw a lot of errors.
Then we decided to try the sample as many of the assets on Khrono’s repository and check if it had something to do with the complexity of our file or it was a generalized issue.
So far every sample asset we tested worked fine.
What follows is the list of the devices where we tested the experience:
Devices where the GLTF file DID work :
- Xiaomi Mi A1 - Adreno ™ 506
- Moto G6 Plus - Adreno ™ 508
- iPhone 6
- iPhone 7 Plus
- iPhone 8
Devices where the GLTF file DIDN’T work :
- Samsung Galaxy A8 (SM-A530F) - Mali-G71
- Samsung Galaxy S8 (SM-G950F) - Mali-G71
- Samsung J7 Prime (SM-G610M) - Mali-T830
This is so far what I can tell you about our problem. If I missed something, please let me know.
In the following link, you’ll find a sample of the code we wrote to set up the scene and load the model and the validation report from Don McCurdy’s GLTF viewer.
As for the model. Since we don’t hold the rights for that IP, I’ve asked for permission to attach it to this post. If the client is ok with it, I’ll share the assets with you.
Looking forward to your comments.