# Performance of scene traversal

**URL:** <https://discourse.threejs.org/t/performance-of-scene-traversal/28537>\
**Category:** Questions\
**Tags:** performance\
**Created:** [July 30, 2021, 8:37pm UTC](https://discourse.threejs.org/t/performance-of-scene-traversal/28537 "2021-07-30T20:37:12Z")\
**Posts on this page:** 1\
**Showing post:** 9

<div class="post-metadata">

**Author:** ![donmccurdy](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.threejs.org/donmccurdy/32/33209_2.png) [@donmccurdy](https://discourse.threejs.org/u/donmccurdy)\
**Post date:** [March 19, 2025, 1:51am UTC](https://discourse.threejs.org/t/performance-of-scene-traversal/28537/9 "2025-03-19T01:51:13Z")

</div>

Assuming the information “lost” is the distinct meshes themselves, and that the quantity of meshes is also the cause of the performance issue, you probably need to figure another way to represent things such that interactive objects do not correspond 1:1 to GPU draw calls (that is, batching). Converting the scene into one or more BatchedMesh objects for example. I’ve written a bit more about how that would relate to CAD and AEC models in:

> [@Render big model](https://discourse.threejs.org/t/render-big-model/79086/4):
>
> I think to render CAD formats effectively, instancing or batching (e.g. InstancedMesh and BatchedMesh) are strictly necessary. This makes selection and interactivity more complex, but that can be solved. Personally I would start by either modifying a loader, or re-writing the output of a loader, into one or more BatchedMesh instances. With BatchedMesh you can… position/rotate/scale raycast show/hide set color … for any number of instances of any number of geometries. To do more complex thin…

---

_[View the full topic](https://discourse.threejs.org/t/performance-of-scene-traversal/28537)._
