glTF-Project-Explorer icon indicating copy to clipboard operation
glTF-Project-Explorer copied to clipboard

Allow specifying supported extensions

Open weegeekps opened this issue 3 years ago • 3 comments

One aspect that could also be covered by the project explorer is the support for extensions. There are many viewers, importers and exporters that support different extensions, and having a place to look up this, as a "feature matrix", may be helpful.

In fact, this could - as a first approximation - already largely be covered by the existing project explorer infrastructure. The supported extensions could be treated in a similar way as the existing tags:

{
  "name": "Example of a plugin for some authoring software",
  "type": ["plugin"],
  "outputs": ["glTF 2.0"],
   ...
   "inputExtensions" : ["KHR_lights_punctual", "KHR_draco_mesh_compression"],
   "outputExtensions" : ["KHR_lights_punctual", "KHR_materials_ior" ]
}

This would allow the existing search+filter structures to be used on these tags as well.


One could consider different levels of integration or organization for that. Roughly: One could pull out this aspect into a dedicated page, database, or search tool (for example, to show it on one page as an actual matrix, with the tools in the rows, the extensions in the columns, and ✔️ `s that indicate support). But regardless of the final presentation, I think that at least having this information in a central place in the project explorer database could be really useful.

Originally posted by @javagl in https://github.com/KhronosGroup/glTF-Project-Explorer/issues/122#issuecomment-944377531

weegeekps avatar Feb 28 '22 16:02 weegeekps

This is a great idea, I had a difficult time finding projects that utilized some of the extensions I was interested in (like the KHR_xmp_json_ld one) and think it'd be awesome to consolidate / filter in the project explorer page

madjin avatar Mar 06 '24 17:03 madjin

This is a great idea

gm3 avatar Mar 06 '24 18:03 gm3

When we implement this, we should have 2 sections for extension support:

  • glTF extensions supported out-of-the-box.
  • glTF extensions supported with third-party addons / plugins.

It might also be useful to provide more information with each extension, such as the first known version of the software with support for the extension, or a link to the third-party addon / plugin that adds support.

Why: I don't want people to think "Why hasn't <software here> implemented <important extension>?" then they go implement it and find out it's already a thing and the PR is rejected. Similarly I don't want people to see it on one big list of supported extensions and then they try to import their assets and it doesn't work because they didn't know a third-party plugin was required.

aaronfranke avatar Mar 06 '24 19:03 aaronfranke