# Instancing Text on InstancedMesh

**URL:** <https://discourse.threejs.org/t/instancing-text-on-instancedmesh/18932>\
**Category:** Questions\
**Tags:** instanced-mesh\
**Created:** [September 22, 2020, 2:04pm UTC](https://discourse.threejs.org/t/instancing-text-on-instancedmesh/18932 "2020-09-22T14:04:26Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![D13](https://avatars.discourse-cdn.com/v4/letter/d/e9c0ed/32.png) [@D13](https://discourse.threejs.org/u/D13)\
**Post date:** [September 22, 2020, 2:04pm UTC](https://discourse.threejs.org/t/instancing-text-on-instancedmesh/18932/1 "2020-09-22T14:04:26Z")

</div>

I need to how to instance a bunch of different text geometries into one mesh. But I still needed control of the position of the merged text objects.

[This was possible and was answered in a later post with BatchMerge BufferGeometry]

---

<div class="post-metadata">

**Author:** ![Mugen87](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.threejs.org/mugen87/32/5645_2.png) [@Mugen87](https://discourse.threejs.org/u/Mugen87)\
**Post date:** [September 25, 2020, 9:02am UTC](https://discourse.threejs.org/t/instancing-text-on-instancedmesh/18932/2 "2020-09-25T09:02:19Z")

</div>

> [@D13](#):
>
> Is it more performant to start with a bunch of instances of the same text and then replace them? Or is it better to simply create the text as unique geometry up front?

Well, if the geometry is different, you have to use different instances of `ShapeBufferGeometry` and thus requires unique meshes.

You may want to consider to merge all `ShapeBufferGeometry`s into a single geometry (via [BufferGeometryUtils.mergeBufferGeometries()](https://threejs.org/docs/index.html#examples/en/utils/BufferGeometryUtils.mergeBufferGeometries)) but this is normally only done if the geometry is static. Since the texts are part of your animation, this approach not really appropriate.

---

<div class="post-metadata">

**Author:** ![Mugen87](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.threejs.org/mugen87/32/5645_2.png) [@Mugen87](https://discourse.threejs.org/u/Mugen87)\
**Post date:** [October 6, 2020, 8:37am UTC](https://discourse.threejs.org/t/instancing-text-on-instancedmesh/18932/6 "2020-10-06T08:37:19Z")

</div>

Sorry but I don’t understand how you want to use `InstancedMesh`. It seems what you are trying to accomplish is in general to suited for instanced rendering.

---

<div class="post-metadata">

**Author:** ![D13](https://avatars.discourse-cdn.com/v4/letter/d/e9c0ed/32.png) [@D13](https://discourse.threejs.org/u/D13)\
**Post date:** [September 8, 2021, 4:45am UTC](https://discourse.threejs.org/t/instancing-text-on-instancedmesh/18932/8 "2021-09-08T04:45:14Z")

</div>

Turns out I did indeed want to use MergeGeometries, as you suggested. Prisoner gave me an example of batchMerge that did exactly what I needed. I still have control of the ( pos, scale, quat ) of the merged meshes. All in 1 drawCall. Awesome.
