TextMeshProが手前に来ない

今回も実際にやった件からです。
発生した現象としては単純です。

  1. TextMeshProをUIに追加する
  2. TextMeshProが見えない
  3. 見えてるGameObjectを非表示にすると、後ろにいる…

描画されていないわけではなく、手前に別のものが表示されているのが原因です。
UI適当に置いた後に、背景設置した際にもなったりすると思います。

肝心の解決方法ですが、単純にUIのOrder in Layerの値を大きくすれば解決します。
ただし設定するGameObjectはCanvasです。
当然ですが、他より大きい値にする必要があります。

TextMeshProの設定を眺めても、Order in Layerは見当たりませんでした。
Spriteだと設定先はGameObjectのSprite Rendererコンポーネント内部なので、どうしても近い場所を探してしまいますね。