648
edits
No edit summary |
No edit summary |
||
Line 3: | Line 3: | ||
== Overview == | == Overview == | ||
osm2city is a set of procedural programs, which create plausible FlightGear scenery objects (buildings, roads, power lines, piers, platforms etc.) based on OpenStreetMap (OSM) data. | ''osm2city'' is a set of procedural programs, which create plausible FlightGear scenery objects (buildings, roads, power lines, piers, platforms etc.) based on OpenStreetMap (OSM) data. | ||
* The development [https://gitlab.com/fg-radi/osm2city repository] is hosted on gitlab. | * The development [https://gitlab.com/fg-radi/osm2city repository] is hosted on gitlab. | ||
Line 10: | Line 10: | ||
* Written in Python 3.5, developed on Linux. It should also run on Windows and Mac OSX, however most testing is done on Linux. | * Written in Python 3.5, developed on Linux. It should also run on Windows and Mac OSX, however most testing is done on Linux. | ||
== | == Programs and Feature Areas == | ||
* | ''osm2city'' contains the following programs to generate scenery objects based on OSM data: | ||
* '''buildings.py''': generates buildings honoring OSM height and level tags as well as reads relations ('buildings with holes'). Includes lightmaps, complex sloped roofs (using Olivier Teboul's implementation of the straight skeleton algorithm), obstruction lights on tall buildings. Texturing of roofs and facades based on a texture manager, which find matching texture for given building (number of levels, modern/old building, etc). | |||
* '''roads.py''': generates different types of roads and railways incl. texturing and automatically calculated bridges. | |||
* '''pylons.py''': generates pylons and cables between them for power lines, aerial ways, railway overhead lines as well as street-lamps, wind turbines and storage tanks. | |||
* '''piers.py''': generates piers and boats. | |||
* '''platforms.py''': generates railway platforms. | |||
All generated objects are added as static or shared objects to FlightGear scenery with correct elevation read on the fly from existing FlightGear scenery. Tagging and topology in OSM are respected as far as possible and complemented with some heuristics (given the developer team's origin mostly inspired by how stuff looks in Europe). | |||
:* | |||
* | |||
* | |||
== Planned Features == | == Planned Features == | ||
(in random order) | (in random order) | ||
* Rembrandt lighting | |||
* Rembrandt lighting | * put a piece of matching ground texture around buildings ('garden') | ||
* put a piece of matching ground texture around buildings ('garden') | * put shared models if/where OSM indicates so: gas stations... | ||
* put shared models if/where OSM indicates so: gas stations... | * place buildings at plausible places in areas, where OSM coverage is low | ||
* | * use region specific models for detached and row houses | ||
* performance improvements for generation and usage | |||
* | |||
* | |||
== Contributing == | == Contributing == |
edits