Geodan / mapbox-3dtiles

3D Tiles implementation using Mapbox GL JS custom layers
BSD 3-Clause "New" or "Revised" License
297 stars 62 forks source link

Instanced 3D Tiles (i3dm) #25

Closed bertt closed 3 years ago

bertt commented 4 years ago

Add support for instanced 3D Tiles (i3dm).

Specs: https://github.com/CesiumGS/3d-tiles/tree/master/specification/TileFormats/Instanced3DModel

Working sample in Cesium:

see https://bertt.github.io/cesium_3dtiles_samples/samples/instanced/

Contains 1 tile (tree.i3dm) with tree.glb and two instances defined. Right clicking displays batch information in console (Height: Height: 101 or 102)

Not working sample in MapBox:

see https://bertt.github.io/mapbox_3dtiles_samples/samples/instanced/

Content tree.i3dm:

i3dm file: tree.i3dm
i3dm header version: 1
i3dm GltfFormat: 1
i3dm header magic: i3dm
i3dm featuretable json: {"INSTANCES_LENGTH":2,"POSITION":{"byteOffset":0},"EAST_NORTH_UP":true}
i3dm instances length: 2
i3dm batch table json: {"Height":[100,101]}
positions: <-8407347, 4743739.5, 38.29>,<-8406181, 4744924, 38.29>
normal ups: : -
normal rights: : -
Scale non-uniform: : -
Scales: -
Batch ids: : -