CESIUM_primitive_outline conflicts with KHR_draco_mesh_compression

I want to generate gltf with both CESIUM_primitive_outline and KHR_draco_mesh_compression extensions, but it seems the indices changes when the draco compression is applied.

Is there any workaround to apply both extensions?


Hey @Chris_Wang

We faced a similar issue recently and I opened (and later closed) a github issue in the draco repo to get the order of indices.

While that issue was about point clouds you could do something similar:

  1. Use MESH_SEQUENTIAL_ENCODING to preserve the ordering of vertices. However this will make the compression less effective.
  2. Build an old index to new index map by decoding the mesh after its compressed. You might need to add an id attribute like what’s described in that issue.

Those are some pointers to get started. Let me know how it goes.

Hi @sean_lilley. We adopted lzma instead of Draco for compression, in order to preserve more accurate data.
Thanks again for your replay.