Sprites in TextMesh Pro - Best to use Sprite Atlas or Sprite with multiple mode

Hello,

I was wondering what would be the most efficient/best practice way to add sprites in a text. From my understanding, we have two possibilities :

  • Manually add them in the same Sprite, with the Sprite Mode set to Multiple, then we create one unique TMP Sprite Asset.
  • Create one Sprite per image, and add them to a Sprite Atlas. But we will need to have one TMP Sprite Asset per Sprite.

While the first choice appears to take more time, I don’t know if the second one is still optimized correctly with having one Sprite Atlas (because we still have multiple TMP Sprite Asset).

Thank you for helping.

From a rendering point of view, packing all the sprites in the same texture is more efficient given these all share the same material / texture and thus results in 1 draw call.

Having individual sprites in separate textures results in 1 draw call per material / texture used.

From a workflow point of view, it is easier to edit / manage individual sprites / textures than a combines sprite sheet / texture atlas.

P.S. I did experiment with supporting the Sprite Atlas system in Unity. There are current limitation and API functionality that is missing for this to happen but I would like to support this as it would enable users to keep these sprites as individual textures but have the benefits of having the Sprite Atlas system combine them into a single texture.