TextMeshPro 3D Object messing up with normal UI Canvas

Hi,

I have a 3D Object TextMeshPro disabled in my scene, and a normal UI Canvas with a button working.

When I enable the 3D Object TextMeshPro, the Text (TMP) from the button disappear… the button still works, but no text in it at all…

Worse, this button changes my whole scene to another one, Menu, with lots of buttons with Texts (TMP)… all of them disapeared… yes, in another scene, just because the enabling of that 3D Object TextMeshPro.

Any ideias?

If you are using the Canvas system, make sure you are using the TextMeshProUGUI text object found in UI - Text - TextMeshPro as seen below.

If you are using a mixture of normal objects along with object which happen to share the same Material Presets, you have to create a separate set of Material for the normal TMP component that works with the Mesh Renderer and a set of Material Preset for the Canvas objects.

This is required due to the CanvasRenderer and MeshRenderer having different ZTest requirements. So when the same material is used on both, these two types of renderers are fighting over this ZTest and changing it which results in incorrect settings for one of the other.

1 Like

Genius. Thank you, sir.