CNA-GAP-037: EXT_mesh_gpu_instancing is not imported: each node keeps one placement and its per-instance transforms are dropped

CNA snapshot 009d40f5  ·  Known Issues › Functional gaps  ·  source links pinned to 009d40f5

✓

Evidence basis: source-verified at the pinned commit; tests exist (not executed for this page). Claims on this page were checked by reading the CNA source at commit 009d40f5; unless a sentence says otherwise, nothing here was built or executed. Nothing on this page was executed unless the Evidence section says so.

A node declaring EXT_mesh_gpu_instancing is imported with its own single transform, so the file renders one copy where it describes many; the drop is reported per file (gpu-instancing-dropped).

Identifier
CNA-GAP-037
Category
Functional gap
Subsystem
Models & glTF
Status
Open
Verified against
CNA 009d40f5 (009d40f5dd085c4e674d3479675fac84b12b3e0a)
Evidence basis
Source-verified: read at TARGET, not executed
Tests touching this area
Yes: see Current tests
Affected contract
ContentManager::Load<Model> on glTF files using EXT_mesh_gpu_instancing

Expected behaviour

An importer that accepts a file declaring EXT_mesh_gpu_instancing should reproduce the instances it describes.

Actual behaviour at TARGET

ContentManager.cpp (GLTF-146/GLTF-352) logs that such nodes are imported with their own placement only; GltfImportCore.cpp classifies the extension as Unsupported, counts gpuInstancedNodeCount and emits the gpu-instancing-dropped diagnostic. gltf-limitations.md lists it as UNSUPPORTED and explains why the instancing path was not built.

Source locations

Evidence

Checked by reading at 009d40f5; not executed.

Focused reproduction

No focused reproduction is known. Nothing has been invented here; the evidence above is what exists.

Current tests

GltfImportReportTests.cpp and GltfNodeHierarchyTests.cpp cover the report and the instanced-node count; no instanced rendering exists to test.

Regression test

If implemented, an L4 placement oracle over an instanced fixture (N placements expected).

Blast radius

glTF files that rely on GPU instancing (vegetation, crowds, repeated props).

Workaround

Expand the instances into ordinary nodes before import.

The same subject is explained at several altitudes. These are the neighbouring pages at each one.