You take aerial imagery and laser-scan/photogrametric data. You can create rough 3D models from the aerial images already if they overlap enough. The laserscanning data and terrestrial photos can be used for more detail and accuracy. You could also use government data if your government provides geodata like coordinates, houses etc.
It is impressive but not really hard (theoretically).
Theoretically just the aerial images would be enough if you have some control points. But I remember the Nokia people say they used mobile laserscan data. Can't find the source anymore though, I thought it was on HN actually.
It is impressive but not really hard (theoretically).
Check out eg http://maps3d.svc.nokia.com/webgl/index.html