COLLADA2GLTF
COLLADA2GLTF copied to clipboard
ZAE support
I know very little about this so might be missing something trivial. Is there a way to use this tool with ZAE? which I believe is a zip archive of DAE.
Is there a way to script this so that the ZAE is first unzipped then transcoded or does the transcoder itself need to support ZAE inherently?
Any pointers/documentation would be very useful. Thanks
@sbtron, currently this project doesn't support reading zipped COLLADA archives.
Is there a way to script this so that the ZAE is first unzipped then transcoded or does the transcoder itself need to support ZAE inherently?
It would probably be more appropriate for this feature to exist in OpenCOLLADA but it would be a fairly large breaking change.
I'm not opposed to supporting this here if it's something people want. I just want to be careful to avoid feature bloat.
e.g. Does it make sense to bundle zlib statically and bloat the binary or at least link it as a shared object and complicate the dependency situation for cross-platform users? Or is it better to have this be a standalone tool that does one thing (convert COLLADA files to glTF files) and say that you should script this with whatever system provided extractor you have if you want to use it with compressed archives.
Actually looking at it again - I think OpenCOLLADA does (in theory) support this via LibXML, so I may just need to flip a switch somewhere to enable it.
kmz is another collada archive that has been quite popular.
zae is in the 1.5 spec:
On import and export, DCC tools must support the .zae format, which is a zip archive of one or several
.dae files (COLLADA documents) and all the referenced content (textures).
The archive must include a file named manifest.xml, an XML-encoded file that contains a <dae_root>
element. This element is a UTF8 encoding of the relative URI pointing to a .dae file. If the URI contains a
fragment then the indicated element is the starting point for application loading of the .zae archive.
Otherwise, the <scene> element will be the starting point for application loading the .zae archive. If
neither of these conditions is met then the behavior is undefined.
The URIs in the .zae files can reference any other file in the archive using relative paths from the root of the
archive, in accordance with the URI standard.
The archive itself may include other archives (zip, rar, kmz, zae). The URI to reference a document
inside a nested archive, itself inside the .zae archive, will use the name of the nested archive in the path.
For example:
./internal_archive.zip/directory/document.dae#element
It is not possible to reference content outside of an archive using a relative URI, but it is valid to reference
content using an absolute URI, such as:
file:///other_directory/other_document.dae#element