# How to export GLTF model to Cesium 3D Tiles with LODs (HLOD style) for Cesium Ion?

**URL:** <https://community.cesium.com/t/how-to-export-gltf-model-to-cesium-3d-tiles-with-lods-hlod-style-for-cesium-ion/43923>\
**Category:** Cesium ion\
**Created:** [October 30, 2025, 2:04pm UTC](https://community.cesium.com/t/how-to-export-gltf-model-to-cesium-3d-tiles-with-lods-hlod-style-for-cesium-ion/43923 "2025-10-30T14:04:08Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![viz\_pal](https://sea2.discourse-cdn.com/cesium/user_avatar/community.cesium.com/viz_pal/32/28173_2.png) [@viz\_pal](https://community.cesium.com/u/viz_pal)\
**Post date:** [October 30, 2025, 2:04pm UTC](https://community.cesium.com/t/how-to-export-gltf-model-to-cesium-3d-tiles-with-lods-hlod-style-for-cesium-ion/43923/1 "2025-10-30T14:04:09Z")

</div>

Hi everyone,

I’m trying to export my own GLTF model into a 3D Tiles format that supports **hierarchical Level of Detail (HLOD)** similar to what’s demonstrated in the [Cesium Sandcastle BIM example](https://sandcastle.cesium.com/?id=3d-tiles-bim).

My goal is to:

- Convert a complex GLTF model that already has a hierarchy (e.g., multiple sub-meshes, nodes, and structure)

- Generate a **3D Tiles dataset** with **tile+LOD style** subdivision (multiple levels of detail for performance)

- Then upload and visualize it in **Cesium Ion**

I tried using the `3d-tiles-tools` npm package, but it seems to convert my model into a **single mesh** , flattening the hierarchy so I lose the structure and don’t get true LOD behavior.

**Questions:**

1. How can I export my GLTF model into 3D Tiles that preserve hierarchy and support LODs (HLOD)?

2. Is there an official or recommended workflow or tool for preparing such tilesets for upload to Cesium Ion?

3. Can Cesium Ion itself generate the tile+LOD structure automatically, or must it be pre-tiled before upload?

Any guidance or examples would be greatly appreciated!

Thanks!

---

<div class="post-metadata">

**Author:** ![Marco13](https://sea2.discourse-cdn.com/cesium/user_avatar/community.cesium.com/marco13/32/2757_2.png) [@Marco13](https://community.cesium.com/u/Marco13)\
**Post date:** [October 30, 2025, 2:13pm UTC](https://community.cesium.com/t/how-to-export-gltf-model-to-cesium-3d-tiles-with-lods-hlod-style-for-cesium-ion/43923/2 "2025-10-30T14:13:44Z")

</div>

> [@viz\_pal](#):
>
> Can Cesium Ion itself generate the tile+LOD structure automatically, or must it be pre-tiled before upload?

This _may_ be the most important aspect here. The [Design Tiler](https://cesium.com/platform/cesium-ion/3d-tiling-pipeline/design-tiler/) that is part of Cesium ion should be able to convert such a model into a tileset, and preserve the relevant structures inside that model. You can upload the glTF/GLB model to ion, and under “What kind of data is this?”, you can select “Architecture, Engineering or Construction model (BIM/CAD)”.

* * *

Other than that, a few asides:

The model in the Cesium Sandcastle BIM example **is** a single model. It does not have any form of hierarchy or level of detail. It is just a 6MB file that contains the whole model. A better example for showing the possible output of the design tiler is [Sandcastle | CesiumJS](https://sandcastle.cesium.com/?id=aec-architectural-design)

The `3d-tiles-tools` are not a tiler. It is not entirely clear how you intended to use them for your purpose. And while the tools generally contain a few “building blocks” that could help to achive much of the functionality that you seem to be looking for, they are primarily a command-line application that offer the exact commands that are listed in the main README.md. For example, when you have a set of GLB files, you can use `createTilesetJson` to create the tileset JSON. But this will _not_ do any form of simplification or processing or generation of LOD level. It will just generate a tileset JSON file for the models, as they are.

---

<div class="post-metadata">

**Author:** ![viz\_pal](https://sea2.discourse-cdn.com/cesium/user_avatar/community.cesium.com/viz_pal/32/28173_2.png) [@viz\_pal](https://community.cesium.com/u/viz_pal)\
**Post date:** [October 31, 2025, 10:10am UTC](https://community.cesium.com/t/how-to-export-gltf-model-to-cesium-3d-tiles-with-lods-hlod-style-for-cesium-ion/43923/3 "2025-10-31T10:10:51Z")

</div>

Thanks, Marco your explanation was very helpful.

A couple of follow-up questions:

1. Does the **Design Tiler** include support for true hierarchical LOD (HLOD) generation — i.e., automatically subdividing the model into multiple LODs at different tile levels for streaming?

2. If so (or even if not fully automatic), is there a way to run the same tiling process **offline or on-premises** under license (rather than uploading to Cesium ion)? Or is there an open-source package you’d recommend for generating hierarchical 3D Tiles from GLTF/GLB in a local environment?

My client must keep the data wholly offline, so any guidance on licensing or self-hosted tooling is appreciated.

---

<div class="post-metadata">

**Author:** ![Marco13](https://sea2.discourse-cdn.com/cesium/user_avatar/community.cesium.com/marco13/32/2757_2.png) [@Marco13](https://community.cesium.com/u/Marco13)\
**Post date:** [October 31, 2025, 3:52pm UTC](https://community.cesium.com/t/how-to-export-gltf-model-to-cesium-3d-tiles-with-lods-hlod-style-for-cesium-ion/43923/4 "2025-10-31T15:52:44Z")

</div>

For **1.** : I think that the Design Tiler currently only does a “structural subdivision”, but no mesh simplicifation. But this structural subdivision could also allow an important form of data streaming. And I _think_ that mesh simplification is on the roadmap, but I’d have to verify that and see whether there is a timeline. (@sean_lilley correct me if I’m wrong or there are further details to add here).

For **2.** : There is the option of [Cesion ion Self-Hosted](https://cesium.com/platform/cesium-ion/cesium-ion-self-hosted/). It will offer the tiling functionality from ion, in a self-hosted environment. You can reach out for more information about that.

(About open-source packages: There are many, many open-source tools for converting various kinds of data into 3D Tiles. Some are listed in the [3D Tiles Resources](https://github.com/CesiumGS/3d-tiles/blob/main/RESOURCES.md#generators) page. But I certainly cannot _recommend_ one. There are many aspects to consider, about the nature of structure of the input data, which data should be preserved in which form, and the quality of the resulting output)
