Heightmap - Was ist das?

  • Eine Heightmap ist eine 2-dimensionale Grafik, welche die verschiedenen Höhenlevel in helleren und dunkleren Grautönen abbildet. Diese werden hauptsächlich in der 3-D Computergrafik eingesetzt um:

    • Bump maps zu parametrisieren und dadurch eine nicht-glatte Oberfläche zu imitieren
    • Displacement maps zu parametrisieren und dadurch eine nicht-glatte Oberfläche zu erzeugen
    • ein Terrain zu erzeugen, dessen Höheninformation aus der Karte gezogen und in ein 3D-Polygonnetz konvertiert wird

    Mit dieser Technik können riesige Landschaften über ein Graustufen- Bild abgespeichert und anschließend in einem 3D Programm auf ein Polynetz gezogen werden.
    Häufig werden Heightmaps mit einer Grafiksoftware oder speziellen Editoren erstellt. Die Auflösung kann aufgrund der vielen Grafikformate nach Bedarf gewählt werden. Eine konkurrierende Technik in der Computerspiel-Technik ist die Voxel-Technik.


    Auch in Cities Skylines wird es möglich sein, eigene Heightmaps in den Editor zu importieren. Für uns als Modder ergibt sich dadurch die Möglichkeit, realistische und sogar aus der Realität gegriffene Höhenmodelle in das Spiel zu bringen. Einem Nachbau bekannter Orte wie Rio de Janeiro, New York, Hawaii oder Brunsbüttel steht deshalb von diesem Gesichtspunkt aus nichts mehr im Wege.



    Sobald ich Cities Skylines in den Händen halte, werde ich euch eine Tutorial-Reihe mit an die Hand geben, die euch dabei unterstützt, nicht nur eure eigene Stadt zu realisieren, sondern auch die Landschaft auf der ihr diese bauen wollt, nach euren eigenen Wünschen und Bedürfnissen zu erstellen.

  • Heightmaps simpel aus der realen Welt in Cities übertragen


    Ich bin mal so frei und führe das ganze hier mal fort, da Peterson Cities immer noch nicht in den Händen hält^^


    Im Map-Editor habt ihr direkt einen Menüpunkt für Import/Export Hightmap.
    Unter Export könnt ihr eure bestehende Karte in einer Hightmap PNG Datei exportieren aber viel interessanter ist das Import Menü.
    In diesen Menü könnt ihr eure gespeicherten Hightmaps aufrufen und auswählen, des weiteren ist dort auch ein kleines Ordner-Icon, welches euch zum Speicherort der Hightmaps führt.
    Hier reicht es einfach die Hightmap Dateien(PNG Bilder) rein zu kopieren/verschieben und sie werden direkt im Editor angezeigt.


    Nun wie bekommt man jetzt diese Hightmaps aus der realen Welt?
    Ganz einfach, hierfür gibt es eine Webseite die sich terrain party nennt.


    Auf dieser habt ihr die gesamte Weltkarte und ein Cities Raster in Original Maßstab, dieses könnt ihr mit der Maus über die gesamte Welt bewegen.
    Hier könnt ihr auch gleich sehen wie klein das Raster gegenüber größeren Städten eigentlich ist.
    Auf der rechten Seite könnt ihr das Raster auch vergrößern und verkleinern aber solltet ihr vorhaben, eine originale Map zu erstellen, empfiehlt es sich den Maßstab unverändert zu lassen.
    Habt ihr das Raster über eine gewünschte Landfläche bewegt, könnt ihr diese jetzt als Hightmap über den Wolken-Button auf der rechten Seite runter laden.
    Ihr bekommt einen Zip-Ordner mit mehreren Detailstufen der gewählten Landfläche.
    Einfach eine oder alle entpacken und in dem Speicherort der Heigtmaps kopieren/verschieben und im Editor auswählen und schon habt ihr eine Grundform eine echten Landfläche.
    Jetzt braucht ihr diese nur noch mit Bäumen und Infrastruktur zu versehen und fertig ist eure reale Map.

  • Hallo, mein erster Post hier und schon muss ich meckern. Aber das Spiel ist dennoch sehr schön.

    Einfach eine oder alle entpacken und in dem Speicherort der Heigtmaps kopieren/verschieben und im Editor auswählen und schon habt ihr eine Grundform eine echten Landfläche.
    Jetzt braucht ihr diese nur noch mit Bäumen und Infrastruktur zu versehen und fertig ist eure reale Map.

    Leider fühlt sich das nicht ganz so easy an. An sich kann man diese ganzen Schritte machen, ist auch super nachvollziehbar, aber das Ergebnis lässt dann doch sehr zu wünschen übrig. Kommt wahrscheinlich auch auf die gewünschte Gegend an. Bei mir ist es relativ flach, Flüsse und Berge sind im Map-Editor kaum noch zu unterscheiden. Dazu kommt das Straßen und Häuser mit ins Relief übernommen werden und dann wahlweise Löcher oder Erdhügel bilden. Wie macht ihr das, wenn ihr ne reale Region nachbauen wollt? Terrain-Party scheint mir nicht die optimalen Daten zu liefern.

    Bei A-Train hatte ich mir mal selbst Graustufenmaps gebastelt, allerdings nur 2 Farben (Wasser + Land). Müsste ja hier auch funzen. Gibt es irgendwo eine Tabelle, welcher Grauton welche Höhe bedeutet?


    Danke schonmal, das wird sicher nicht die letzte Frage sein.

  • ja, bei terrain.party kommt es leider stark auf die Region an, ob direkt brauchbare Daten geliefert werden. Evtl durchsuche mal andere Kartenanbieter nach heightmaps. Manchmal stellen auch lokale GIS Firmen oder die Behörden kostenlose heightmaps ihrer Region zur Verfügung.


    Generell ist es aber so, dass Cities die meisten heightmaps beim importieren in den Höhenunterschieden komprimiert, weil nur eine Höhe von 1024m (wenn ich mich richtig erinnere?) möglich ist.

    Auch sind die heightmaps von terrain.party im Normalfall ungeeignet, direkt importiert zu werden, da z.b. Küstenlinien schrecklich ausschauen. Da musst du dann mit einem Programm wie Wilbur ran. Damit kannst du so enorm viel machen (auch die Höhenunterschiede verstärken zB). Auch könntest du dir damit reine Zufallsmaps erstellen.

    Am besten schau dir mal dieses Tutorial an und arbeite das durch, das ist ein guter Einstieg: https://steamcommunity.com/sha…filedetails/?id=482232215

  • Leider fühlt sich das nicht ganz so easy an. An sich kann man diese ganzen Schritte machen, ist auch super nachvollziehbar, aber das Ergebnis lässt dann doch sehr zu wünschen übrig. Kommt wahrscheinlich auch auf die gewünschte Gegend an. Bei mir ist es relativ flach, Flüsse und Berge sind im Map-Editor kaum noch zu unterscheiden. Dazu kommt das Straßen und Häuser mit ins Relief übernommen werden und dann wahlweise Löcher oder Erdhügel bilden. Wie macht ihr das, wenn ihr ne reale Region nachbauen wollt? Terrain-Party scheint mir nicht die optimalen Daten zu liefern.

    Bei A-Train hatte ich mir mal selbst Graustufenmaps gebastelt, allerdings nur 2 Farben (Wasser + Land). Müsste ja hier auch funzen. Gibt es irgendwo eine Tabelle, welcher Grauton welche Höhe bedeutet?

    Mit "easy" war nur gemeint, das dass Importieren der gewünschten Region recht leicht klappt. Die Qualität ist natürlich ein anderes Thema, da Terrain Party keine professionellen Height Maps generiert(z.B. werden Wassertiefen ignoriert und die Auflösung der Height Maps ist recht klein).

    Zusätzlich ist Cities ein großes Limit, da die unterstützte Größe(Auflösung der Height Map File) recht klein ist und details, sowie kleinere Höhenunterschiede verloren gehen. Auch die Engine von Cities selbst, denn das Terrain ist recht grob(begrenzt in Vektoren etc. ) und erfasst Feinheiten auch nicht wirklich.

    Für eines ist dieses Verfahren aber dennoch gut, nämlich hilft es die Form einer Region auf recht schnelle Weise ins Spiel zu bekommen. Was danach kommt liegt an einem selbst in welcher form Qualität man das ganze haben will. So kommt man fast nicht drum herum alles nach zu arbeiten. Wenn man z.B. spezial Effekte wie realistische Bergspitzen haben will, muss man sich ggf. noch spezielle Brushes importieren und das Nacharbeiten dieser zusätzlich üben. Ich selbst nehme mir mindestens ein bis zwei Woche Zeit um nur das Terrain einer Karte nach zu arbeiten, da es leider keine Möglichkeit gibt solches "easy" fertig zu Importieren.

    Wobei es diverse externe Tools gibt(nicht ganz kosten frei) welche Atemberaubende realistische Ergebnisse erzielen können, welche auch von vielen größeren Entwicklern verwendet werden. Aber selbst diese Möglichkeit lässt sich in CIties nicht umsetzten, da dass Spiel eben Limits hat.