improve support for loading glTF "extras"
- Dominant language
- C++
- Stars
- 13.2k
- Forks
- 3.2k
- Avg merge
- 2d 8h
- Merged PRs (30d)
- 21
Description
Currently, the loaded data structure allows metadata to be attached to a scene or a node. When loading a glTF asset that contains "extras", Assimp attempts to convert node-level extras to node-level metadata.
The glTF 2.0 specification also allows for extras to be attached to accessors, animations, buffers, cameras, images, materials, meshes, samplers, skins, and textures. However, the corresponding Assimp data structures don't provide anywhere to load this information.
**Is your feature request related to a problem? Please describe.**
Information is lost when loading glTF models.
**Describe the solution you'd like**
This issue requests that metadata members of type `aiMetadata *` be added to `struct aiMesh`, `struct aiCamera`, `struct aiMaterial`, and so on, and that the glTF 2.0 loader be enhanced to populate the appropriate members whenever "extras" properties are present in the glTF.
Contributor guide
Research direction
Start by tracing the existing glTF loader path that converts node-level "extras" into metadata, then inspect the Assimp data structures listed in the issue. Done means the relevant structures can retain metadata and the loader preserves extras from accessors, animations, buffers, cameras, images, materials, meshes, samplers, skins, and textures.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- computer-graphics
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100