- Home /
2D project - Sprite not visible in scene view
I know this question has been asked a lot but I can't find any solution that works.
I started a new 2D project in Unity 2018.3.1f1 Personal version, dragged in some art, sliced it and dragged a character sprite onto the scene view. The sprite is not visible. I can see the box outline but no image. The sprite image is visible in game view though. And when I press Play.
I have searched the forums and found a variety of suggestions. None have worked.
Here is what I have tried:
1. checked that all Layers are visible (eye icons are on)
2. main camera z depth is -10, character sprite z depth is 0
3. both main camera and character are on Default layer (I tried changing these including creating new layers)
4. sorting layer for character is also Default (I tried changing this too including creating new layers)
5. toggled 2D to 3D - I can see the sprite is aligned in x-y plane and the camera is pointing at it but still just a box, no image
6. clicked character in Hierarchy and pressed F to zoom in - can see outline box but no image
7. changed "Mode used to Display the Scene" dropdown (right under Scene tab) and tried almost everything (Shaded, Wireframe, etc.)
8. changed Sprite Renderer Material property to every option - Default-Diffuse and Default-Material allow me to see Sprite image but it is washed out by a grey box over top (can't use that in a game).
I am at a complete loss...
WEIRD UPDATE:
I added a second sprite to the scene. Call it character2. It was also invisible.
I changed the Sprite Renderer $$anonymous$$aterial property of character2 to Default-$$anonymous$$aterial. Same behaviour as above in #8. I can see the sprite but it is covered by a dark grey semi-transparent box.
Strangely, the original sprite is now also visible. Without any weird box (Sprite Renderer $$anonymous$$aterial is still set to Sprites-Default for this one). It looks great.
So I zoomed into the original sprite to edit its Box Collider and as soon as character2 was out of view the original sprite disappeared again. I zoomed back out and it reappeared. As long as character2 is in view in the Scene View, I can see and work with the original sprite. But if I move character2 off screen or zoom in or delete it. The original sprite disappears.
I wonder if this has something to do with rendering. If one sprite is set to Default-$$anonymous$$aterial, then all the sprites are forced to be visible somehow even though they are set to Sprites-Default?
To be clear, I have zero problems in Game View.
So having an ugly grey box in my scene allows me to work with other sprites. But I have to move it around to make sure it remains visible when i am editing anything else. Clearly this is not an acceptable way to work. And I can't imagine it is the expected behaviour of Unity.
I am still at a loss...
bumping this. I've even tried opening one of the tutorial projects to see if I was doing something wrong in my own, and same result: can only see sprites in game view, not in scene view (wireframes only there, and then only when selected.) Trying to get started with Unity, this is a very disappointing beginning :(
@sutton_c did you ever figure this out?
I just posted an answer, maybe it will help you.
Answer by Vega4Life · Aug 02, 2019 at 03:38 PM
This may be a long shot, but... In the hierarchy hover over your sprite gameObject. If you look at little to the left of it, an eyeball icon appears. If by sheer luck, you may have clicked on that by accident (it will be an eyeball with a slash through it). Click on the eyeball to make your sprite reappear. Just maybe... thats the issue. :) Its also the only thing I know of that would make a sprite show up in game, but not in your scene view.
Hey, @Vega4Life ... thanks for the quick response. Full disclosure: I'm using this on a $$anonymous$$ac ($$anonymous$$ojave 10.14.5.) I didn't think this was relevant, but it turns out it is, for some reason. I booted up a Windows 10 image using Parallels Desktop, installed Unity Hub and Unity 2018.3.14f1, reproduced my steps and… everything worked perfectly, exactly as expected. I've since tried uninstalling all Unity components, restarting the machine, reinstalling everything and trying a couple of different versions of Unity, and the problem persists across the board. I'm guessing it's a bug between Unity and the graphics code on the latest versions of the $$anonymous$$ac OS :( I guess my next step is to figure out how to report a bug to the Unity software $$anonymous$$m… $$anonymous$$y options now would seem to be: wait to see if they can fix the bug; try to work inside a Windows 10 virtual image (laggy and bad, no thanks); see if things don't work better with Unreal. Really sucks: I did a lot of reading as to which tool would work best for my project using the computer I own and the OS I'm most comfortable with, and Unity seemed to be the clear winner. But this is not a promising start.