3D Tiles model format
Using 3D Tiles in your scene
If you experience long wait times when you load 3D scenes in Amazon IoT TwinMaker or have poor rendering performance when you navigate a complex 3D model, then you may want to convert your models to 3D tiles. This section describes the 3D tiles format and available third-party tools. Read on to decide if 3D Tiles are right for your use case and for help getting started.
Complex model use case
A 3D model in your Amazon IoT TwinMaker scene may cause performance issues like slow loading times and lagging navigation if the model is:
Large: its file size is larger than 100MB.
Dense: it is made up of hundreds or thousands of distinct meshes.
Complex: mesh geometry has millions of triangles to form complex shapes.
3D Tiles format
The 3D Tiles format
The 3D Tiles format was created by Cesium
To prepare a 3D Tiles model that you can add to an Amazon IoT TwinMaker scene, follow the instructions documented by Cesium Ion:
Upload Cesium 3D tiles to Amazon
Once your model has been converted to 3D Tiles, download the model files then upload them to your Amazon IoT TwinMaker workspace Amazon S3 bucket:
-
Unzip the archive into a folder.
-
Upload the entire 3D Tiles folder into the Amazon S3 bucket associated with your Amazon IoT TwinMaker workspace. (See Uploading objects in the Amazon S3 User Guide.)
-
If your 3D Tiles model was uploaded successfully, you will see an Amazon S3 folder path in your Amazon IoT TwinMaker Resource Library with type
Tiles3D
.
Note
The Amazon IoT TwinMaker Resource Library doesn't support directly uploading 3D Tiles models.
Using 3D Tiles in Amazon IoT TwinMaker
Amazon IoT TwinMaker is aware of any 3D Tiles model uploaded to your workspace S3 bucket. The model
must have a tileset.json
and all dependent files (.gltf, .b3dm, .i3dm, .cmpt,
.pnts) available in the same Amazon S3 directory. The Amazon S3 directory path will appear in the
Resource Library with the type Tiles3D
.
To add the 3D Tiles model to your scene, follow these steps:
On the scene composer page, choose the plus (+) sign, and then choose Add 3D model.
On the Add resource from resource library window, choose the path to your 3D Tiles model with the type
Tiles3D
, and then choose Add.Click on the canvas to place the model in your scene.
3D Tiles differences
3D Tiles does not currently support geometric and semantic metadata, which means that the mesh hierarchy of the original model is not available for the sub-model selection feature. You can still add widgets to your 3D Tiles model, but you cannot use features fine-tuned to sub-models: model shader, separated 3D transformations, or entity binding for a sub-model mesh.
It is recommended to use the 3D Tiles conversion for large assets that serve as context
for the background of a scene. If you want a sub-model to be further broken down and
annotated then it should be extracted as a separate glTF/glb asset and added directly to
the scene. This can be done with free and common 3D tools like
Blender
Example use case:
You have a 1GB model of a factory with detailed machine rooms and floors, electrical boxes, and plumbing pipes. The electrical boxes and pipes need to glow red when associated property data cross a threshold.
You isolate the box and pipe meshes in the model and export it into a separate glTF using Blender.
You convert the factory without electrical and plumbing elements into a 3D Tiles model and upload it to S3.
You add both the 3D Tiles model and glTF model to an Amazon IoT TwinMaker scene at the origin (0,0,0).
You add model shader components to the electrical box and pipe sub-models of the glTF to make the meshes red based on property rules.