What makes one image appear flat while another has great depth?
It has to do with the concept of foreground and background. The foreground or positive space is usually the subject. The background or negative space is the background.
When there is no differentiation between foreground and background, as with patterns, the image appears flat or 2D. An image that has depth or appears 3D has a foreground, middle-ground and a background. The difference between the foreground and the background allows the viewer to move back through space.