google-ar / sceneform-android-sdk

Sceneform SDK for Android
https://developers.google.com/sceneform/develop/
Apache License 2.0
1.23k stars 604 forks source link

The .obj Converter fails since version 1.7.0 #613

Open ManuelTS opened 5 years ago

ManuelTS commented 5 years ago

The following command on the 1.7.0 converter:

./converter fj1252.obj

fails with:

- Import failed with 4 errors:
-E: OBJ: failed to locate material mtl1, creating new material
-E: OBJ: vertex index out of range
-E: Unable to load scene: fj1252.obj
-E: OBJ: vertex index out of range
ERROR [third_party/lullaby/tools/model_pipeline/model_pipeline.cc:311] Unable to import model: fj1252
Error: Failed to import 'fj1252.obj'

The converter from 1.6.0 works as expected without errors. Other arguments do not play a role, I tested some of them. Workaround: only use the converter from version 1.6.0 or below. The file working on 1.6.0 converter and failing on 1.7.0 is: fj1252.zip.

This is a reissue of: https://github.com/gdamoreira/google-ar-asset-converter/issues/16

tpsiaki commented 5 years ago

Thank you for the report and obj file that repros. We are able to repro this bug internally and will work on a fix.

ManuelTS commented 5 years ago

Just for the protocol, the error persists on version 1.8.0.

ManuelTS commented 5 years ago

Just for the protocol, the error persists on version 1.9.0.

ManuelTS commented 5 years ago

Thank you for the report and obj file that repros. We are able to repro this bug internally and will work on a fix.

But when? You guys skipped the fix two versions and two months now :(

ManuelTS commented 5 years ago

For the protocol, the same error in the converter as posted in on 23 of March 2019 on ARCore 1.7.0 persists in ARCore 1.10.0 on the same file.

One would suspect there are some fixes of older, long bugs under the ARCore sun, especially due to the introduction of New Environmental HDR mode added to Light Estimation API. Unfortunately, that is not the case.

ManuelTS commented 5 years ago

For the protocol, converter and matc from version 1.11.0 result in the same error. And as an disclaimer, I will stop posting my file verification as my app is finished. Hopefully in the next two months.

ptrbrynt commented 4 years ago

@tpsiaki Any update on this? We're having to use an old version of ARCore that crashes on Android 10.

Venthorus commented 4 years ago

We are currently also not able to update to any of the newer Sceneform versions as we make use of the chroma key sample and currently cannot import the chroma_key_video.obj file with its mat file because of this error. Importing works fine with Sceneform 1.6.0. Obviously we can't just update to a newer Sceneform version as it will crash because of the material version mismatch.

bmonjoie commented 4 years ago

I was also blocked with that for a proof of concept I'm developing on the side. I used an online converter to convert my .obj into a .glb (gITF format) and replaced mention of my .obj file to point to the .glb file and it worked.

ManuelTS commented 4 years ago

@bmonjoie good for single models, but for serveral thousand ones I guess your solution does not work. My application is finished and dwells due to this bug on version 1.7.0, unfortunately. I will move on and refrain from this issue in the future.