2D Objects (sprites) are invisible.

I have the following structure:


If I disable the Image in background the sprites are visible, and if I enable it the sprites are invisible. Is there any option I have to tick to make the sprites visible if I use a background?

A Canvas is used for UI, which is rendered on top of everything by default. It’s not really the best place to put a game world background, if that’s what you’re trying; better to make the background a separate GameObject.

If you insist on using the Canvas for it, you could put the image in a separate Canvas, change that Canvas’s Render Mode(in the inspector) to WorldSpace, then make the Z-position value of the Canvas’s RectTransform be lower than your sprites’ Z-position.