CesiumGS / gltf-pipeline

Content pipeline tools for optimizing glTF assets. :globe_with_meridians:
Apache License 2.0
1.94k stars 250 forks source link

Files with external `http://` uri refererences can't be procesed with gltf-pipeline #666

Open hybridherbst opened 4 months ago

hybridherbst commented 4 months ago

I'm trying to convert some old glTF 1.1 files to glTF 2.0.

While that works in general, it seems that external references throw up gltf-pipeline:

image

Here's an example:

https://storage.googleapis.com/assets.icosa.gallery/63208108939333337/63210051195686758/GLTF/sketch.gltf https://storage.googleapis.com/assets.icosa.gallery/63208108939333337/63210051195686758/GLTF/sketch.bin

To reproduce:

Expected External references are kept as external references

Additional Context While the issue here is happening during glTF 1.1 -> glTF 2.0 conversion, I believe this also affects general use with glTF 2.0.

andybak commented 4 months ago

To add some detail - this is (as far as I know) specifically a Tilt Brush thing. But there's a fair number of Tilt Brush GLTF v1 files out in the wild.

Is there any reason gltf-pipeline shouldn't treat file references as opaque unless requested to handle them?

hybridherbst commented 4 months ago

Here's a glTF file without the tiltbrush extension(s) that has the same issue: needle_godot_plush_ref.gltf.zip

This one is even simpler (just a grey sphere): NeedleSphereReference.gltf.zip

Quick test: Tool Can load these files
model-viewer
needle-engine
Gestaltor
glTF Validator
glTFast
UnityGLTF