assimp / assimp/assimp

improve support for loading glTF "extras"

Open
#5,960 1 comment 1 reaction 0 assignees View on GitHub
Feature-Request glTF2.0
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.