# How to highlight the edges of a GLB model in CesiumJS?

**URL:** <https://community.cesium.com/t/how-to-highlight-the-edges-of-a-glb-model-in-cesiumjs/41035>\
**Category:** CesiumJS\
**Created:** [May 29, 2025, 11:40am UTC](https://community.cesium.com/t/how-to-highlight-the-edges-of-a-glb-model-in-cesiumjs/41035 "2025-05-29T11:40:48Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![kakao](https://sea2.discourse-cdn.com/cesium/user_avatar/community.cesium.com/kakao/32/29742_2.png) [@kakao](https://community.cesium.com/u/kakao)\
**Post date:** [May 29, 2025, 11:40am UTC](https://community.cesium.com/t/how-to-highlight-the-edges-of-a-glb-model-in-cesiumjs/41035/1 "2025-05-29T11:40:48Z")

</div>

Hi,  
I’m using CesiumJS and want to highlight the edges of a GLB model, similar to an outline or wireframe effect.  
Is there a simple way to show the edges of the model in Cesium?  
Maybe using a shader, post-processing, or any other method?  
I’m loading a standard GLB model into my scene, and it renders fine — I just want to make the edges more visible for better clarity.

If anyone has done this before or knows a good way, I’d appreciate your help.  
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:** [May 29, 2025, 12:18pm UTC](https://community.cesium.com/t/how-to-highlight-the-edges-of-a-glb-model-in-cesiumjs/41035/2 "2025-05-29T12:18:52Z")

</div>

There are different concepts of what “highlighting edges” could refer to.

From the description, it sounds like you are _not_ referring to what is sometimes called “silhouette rendering”.

It sounds like you _might_ refer to what can be achieved with the [`CESIUM_primitive_outline`](https://github.com/KhronosGroup/glTF/blob/main/extensions/2.0/Vendor/CESIUM_primitive_outline/README.md) extension. But note that this is not something that can just be “switched on”. Instead, the edges that should be highlighted have to be stored _explicitly_ in that glTF extension. A more versatile extension for highlighting edges is currently in development, via the [`EXT_mesh_primitive_edge_visibility`](https://github.com/KhronosGroup/glTF/pull/2479) pull request ([Direct link to README.md](https://github.com/CesiumGS/glTF/blob/pmc/edge-visibility/extensions/2.0/Vendor/EXT_mesh_primitive_edge_visibility/README.md)), but this is not yet finalized or supported.

It sounds like this mainly refers to something that is related to _wireframe_ rendering, which would look like this:

 ![Cesium Wireframe](https://global.discourse-cdn.com/cesium/original/3X/d/3/d30bf0b7a99f3e457fa4abf6f500c930a5649970.png)

CesiumJS offers this as a _debugging_ functionality. You can pass in the

```auto
  enableDebugWireframe: true,
  debugWireframe: true

```

options when creating the model to achieve this. This is shown (with a different model) in this sandcastle:

> **[Cesium Sandcastle](https://sandcastle.cesium.com/index.html#c=bVJNc9MwEP0rGp+cGSOnH6EkOBloSrm0cEiAiy9re51okCXPSnZqOvx3JDllUshlR/vxdt9bbamVsawXeEBiS6bwwNZoRNfw7yEW51EZ/LVWFoRCyqPJ+1zlqgzIjqSD5RHn6QaaVuIdWEgbXaE06djpFqTUWr32+E4WeXTSKEBcKziAsC8cHn2Q16Sbz9LWH82gyvg5V8yPXXiTeAcVFG4wFt3uhyCsCRpcMEsdhnR1JpGr317FqJubEhXylkQjrOjRcKiqOBA6lWoJlKk1NY7lkd/2JWQ4grFfNNn9t3ar78UTVvd+XOwZHKvXQNa9QF0FSXe4I0QTv7mZ8YvZ5fX0XcKu5nx+/XZ+M0vY5XSSKz8/EOHBPoIl8eTm/+US+I0VhFANn3pU1vMPjwdhrJNGcTxhyxULqztqLh05Al7LYatvdacqoXabdo80Umbjh/DiVSphz6zqCKzQasGmLCwxmCiJMmMHiasRzdgH0bRuH/6XYncdFt11gNOfFl35Ey0vjfFAX5qlp9CsEj0T1fLM5bFSgjEuU3dSbsQvzKNVlrr6/6BSg6f9tUeSMPiy/cXqYQxyzrPUueeRVmtZAP3T+Q8)**
>
> The Cesium Sandcastle provides an interactive environment for testing Cesium code.

What is currently _not_ easily possible is to show the standard (“filled”) representation of the model, and render such a wireframe _on top_ of that. It might be possible to achieve that with a custom shader, but it might be a bit tricky and involve some work.

---

<div class="post-metadata">

**Author:** ![kakao](https://sea2.discourse-cdn.com/cesium/user_avatar/community.cesium.com/kakao/32/29742_2.png) [@kakao](https://community.cesium.com/u/kakao)\
**Post date:** [May 29, 2025, 12:57pm UTC](https://community.cesium.com/t/how-to-highlight-the-edges-of-a-glb-model-in-cesiumjs/41035/3 "2025-05-29T12:57:45Z")

</div>

@Marco13  
how can we have private chat?

---

<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:** [May 29, 2025, 2:16pm UTC](https://community.cesium.com/t/how-to-highlight-the-edges-of-a-glb-model-in-cesiumjs/41035/4 "2025-05-29T14:16:19Z")

</div>

You can click on my user name and select “Message” in the upper right. (I might not always be able to quickly answer all questions, but … we’ll see…)

---

<div class="post-metadata">

**Author:** ![kakao](https://sea2.discourse-cdn.com/cesium/user_avatar/community.cesium.com/kakao/32/29742_2.png) [@kakao](https://community.cesium.com/u/kakao)\
**Post date:** [May 29, 2025, 2:42pm UTC](https://community.cesium.com/t/how-to-highlight-the-edges-of-a-glb-model-in-cesiumjs/41035/5 "2025-05-29T14:42:04Z")

</div>

![Screenshot 2025-05-29 221742](https://global.discourse-cdn.com/cesium/original/3X/a/f/afd3cc58a0d0d411adca37676e559613e4a8b93a.png)  
I cant find "Message"button.  
???

---

<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:** [May 29, 2025, 4:45pm UTC](https://community.cesium.com/t/how-to-highlight-the-edges-of-a-glb-model-in-cesiumjs/41035/6 "2025-05-29T16:45:55Z")

</div>

That’s strange. There was some “User Note” associated with your account, and maybe a certain “trust level” is required. But I just sent you a message, let’s see if you receive (and can respond) to that.
