There are many games that implement an arbitrary 3D view above a city (flight simulators being an example), but if you look at the city -- the buildings in particular -- you'll always find that they lack the fine detail that you find in SimCity. Most significantly, the buildings will have look blurry as you move around them and will never show fine detail. They look awful when you get up close to them. The reason for this is that the building graphics ("textures") are made to be viewable from all angles and distances. The result is that you can view the building from any angle and distance, but the building doesn't look particularly good at any angle or distance. What we do with SimCity is design the building graphics to look best from a small set of angles and distances and don't let the user view them from any other. If you were to actually view these buildings from other angles or positions, they would not look good; they would look worse than the flight simulator buildings I describe above. So you see we have made a tradeoff here: great graphics from one view vs. average graphics from multiple views. We could choose to go with the latter, but in fact we have found that for a game like SimCity, there is little gameplay benefit from viewing the city from multiple views.
After reading the explanation above, you might ask, "Why not simply increase the number of polygons in the buildings and increase the texture detail in the building textures and use mip-mapping to achieve high graphical detail from any viewpoint?" Yes, we could do this, but doing so to acheive a level similar to what we get with a fixed view would require a prohibitively large amount of memory and disk space and would require much faster 3D accelleration than currently available. How much more memory would we need and how much more 3D accelleration would we need? A conservative estimate would be that the game would require about 4-8GB of disk space, the video card would need to have about 1-2GB of RAM, and the video card would need to be about 10-20 times as fast as a current GeForce 4 card. And AGP is going to have to get 4-8 times as fast is it currently is. We are looking forward to the day when such a PC is available, but until then we'll be sticking with somewhat fixed viewing capabilities.
It turns out that even with the simplified texturing and polygon usage that SimCity 4 has now, current PCs still aren't fast enough to draw a large (1024x768+) screen of a complex city viewed from far above. There are simply too many polyons, textures, lighting effects and particle effects for even the fastest GeForce 4 and Pentium 4 to be able to draw. Current measurements are that such a machine draws such a view at about 2 frames per second. You might say, "But my computer can render the same -sized screen in Quake or Unreal Tournament at 90 frames per second. Why is SimCity so much slower?" The answer is that the polygon detail visible in SimCity 4 is 10 or more times the detail you see in a first-person dungeon game. SimCity requires far more textures and far more polygons to draw its view than those games do. On top of that, SimCity's simulation gameplay logic is an order of magnitude more complicated as well and this eats into CPU time needed to draw 3D graphics.