- Home /
TextMeshPro (and only TextMeshPro) UI elements are appearing behind gameobjects
I've been trying to add hud counters to a game made with 3d objects but all of the elements with TextMeshPro are appearing behind gameobjects. Normal text works fine as well as other elements such as images, but specifically TextMeshPro elements appear behind all objects in the scene. Is there a fix for this?
Answer by Master109 · May 07, 2021 at 07:08 AM
I'm not sure why that is happening for you, but I have some ideas that come to mind. If none of these ideas help you find the answer to your question, then please email me your project (gileadcosman@gmail.com) and I am sure I will be able to fix it. After I fix it I will post the answer I found (not posting the actual project files).
Maybe you are using the incorrect TextMeshPro component?
Maybe it is displaying with an incorrect material?
Maybe the character atlas is not correct?
Maybe the sorting order or sorting layer is incorrect?
Maybe you should reimport TextMeshPro?
This might not apply to you, but some extra information:
Renderers on GameObjects can appear invisible for multiple reasons. Here are some that come to mind:
1) The Renderer is not enabled
2) The GameObject is on a layer that is not visible to the relevant camera
3) The GameObject's tag is "EditorOnly" and you are in a build
4) The GameObject is not active
5) The Renderer is fully transparent
6) The Renderer is a CanvasRenderer and the Canvas is disabled
7) The Renderer is being drawn behind other objects
8) The Renderer is being drawn off-screen
9) The Renderer is masked
10) The Renderer's shader is not fully supported on the device
11) The Renderer is a SpriteRenderer and is not displaying a sprite
Your answer
Follow this Question
Related Questions
How to attach a canvas to a game object properly? 1 Answer
Best practice for creating Canvas text in Javascript? 0 Answers
How do I get more freedom with positioning UI Text? 1 Answer
UI Text Component being reset on player when built 0 Answers
How do I root canvas carry UI text over in the next scene 0 Answers