Hello!

I’m working with Unity in 2D mode. I’ve got a sprite object which I’ve placed in my scene and is visible there. I’ve tried making it the child of the camera and the canvas, but no matter what I do I can’t seem to get it to appear when I enter play mode.

The z coordinate of the sprite is larger than the camera’s (camera’s z is -10, I’ve tried 0, 10, 20 for the sprite).

I’ve tried changing the value of Order In Layer from 0 to 1 to 2, with no luck. I’ve tried changing the color of the sprite, and the sprite itself (tried some stock gui sprites). I’ve also tried scaling the sprite.

Sprite Renderer is selected.

Any help would be greatly appreciated!

Canvases are ordered in the hierarchy. Say CanvasA has two children, ImageA and ImageB. Naturally, ImageB will be below ImageA in the hierarchy, and in turn makes ImageB render in front of ImageA in the game view.

Have you checked your Canvas scaler, to make sure all canvases are set to an appropriate setting? If you’re using ‘Screen Space - Camera’, are all Canvases linked to the appropriate camera?