[Solved] UI Canvas is in the way in the editor

it’s very annoying the UI Canvas in the way in the scene windows in the editor I can’t move it how can move so it does not overlap is there anyway to move it away?

2 Likes

EDIT : Since Unity 2019, you can control the visibility of the gameObject in the scene without changing its state in the Game View. See the documentation page

You simply have to click on the little eye on the left of the desired object in the Hierarchy tab.

Scene visibility


You can hide every gizmo you want using the appropriate drop-down list in the editor :

Uncheck the “Canvas” check box :

52746-canvas.png

Though, you can’t move the canvas away. You can disable it temporarily while you make modifications of your scene, but don’t forget to enable it back when starting the game.

I think the solution with having a canvas right in the working environment is a very poorly executed way to have UI in Unity!

Perhaps, try using the “screen space - camera” for the canvas’ rendering mode. It’ll put the canvas in front of the camera and scale it down a lot (by adjusting the plane distance)

I found this very annoying as well. For anyone still getting annoyed by this, here is what I did to get around it.

First disable the canvas component on the canvas game object.
115678-capture.png

This stops the canvas from appearing in both the game and scene view. Next simply enable it again during start. To do this I add the following script to the canvas game object.

public class HUD : MonoBehaviour
{
	void Start()
	{
		GetComponent<Canvas>().enabled = true;
	}
}

It is a workaround, I would be happy to hear there if there is a proper and elegant way to achieve the same thing.