pointcloud data in pnts good, but gltf with EXT_structural_metadata failed to render the same
- Dominant language
- JavaScript
- Stars
- 15.7k
- Forks
- 3.9k
- Avg merge
- 4d 6h
- Merged PRs (30d)
- 34
Description
hi,
we have C++ tools that process point cloud to 3dtiles pnts format, it works fine. Do some special effects with the attributes of the point cloud, eg, display different color , KHR_materials_unlit and so on .

as the new 3dtiles specification comes, 3dtiles next or 3dtiles 1.1 ,whatever we call it , we modified our tool to process point cloud data to glb with extension, but when we load the glbs with the latest cesium, we found some problem in rendering and style setting,
after studying the CesiumJs code(1.105), we are confused with what we found,
1, model.js line from 3003 to 3010
constloader = new GltfLoader(loaderOptions):
is3DTiles = defined(options .content);constconsttype = is3DTiles ? ModelType.TILE GLTF: ModelType.GLTF;
const resource = loaderOptions.gltfResource;
const modelOptions = makeModelOptions(loader, type, options);
the code above : we load glb with pointcloud data inside , there are two types: ModelType.TILE GLTF: ModelType.GLTF;
2 model.js line: 3091
constmodel0ptions = makeModel0ptions(loader, ModelType.TILE PNTS, options);
the code above: load pnts format, we can the special typ for point cloud, ModelType.TILE PNTS.
3 model.js line 3170
const isPnts = this,type === ModelType.TILE PNTS;
we believe the problem is : the new glb format with point clould data, this new format, no where to set ModelType.TILE PNTS. and when CesiumJS renders point cloud data, it still needs this ModelType.TILE PNTS,
Contributor guide
Research direction
Start in model.js around lines 3003-3010, 3091, and 3170, comparing the GLTF and TILE PNTS model types used for point-cloud rendering. Reproduce the reported GLB rendering and styling behavior with the provided point-cloud GLB or equivalent test data, then determine whether the issue remains after current CesiumJS behavior is checked.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- computer-graphics
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100