Rendering a 3D map from Openstreetmap data can be rather cumbersome .
But what if the requirements are less demanding than rendering any city in the world in 3D?
What if I just need to display only a certain city, limited to specific borders? There should not be many polygons for rendering, especially if I want to display only those buildings and roads that are actually visible on the screen (I heard that this technique is used in game development).
I want to achieve something like this , but it is normal to have simple boxes for buildings with an approximate height and no textures. So basically I just need an OSM-based road network and simple boxes representing buildings in 3D.
Thus, the plan may be as follows:
- Extract OSM data to an .osm file
- add "height" data to each building in this file (manually);
- displays a three-dimensional view of the map from the .osm file (requires its own parser) with some kind of three-dimensional engine.
Is this plan feasible? Are there any open source 3D engines that I can use / configure to display an OSM card from an .osm file? Are there any Linux-compatible (OpenGL?) 3D engines that can be [possibly] configured to display an OSM map?