|
Der Sewer |
Top Previous Next |
|
Der "Plug and Play"-Artikel dieses Monats wurde von einem von Graftons Code-Teilen inspiriert und befasst sich mit dem Zusammenfügen ("Nähen") von Terrain. Grafto hat zwei kleine Funktiönchen geschrieben, die, wenn es um Terrain-Sewing geht, hervorragende Arbeit leisten. Allerdings erfordern sie schon etwas Vorbereitung. Dieser Code-Schnipsel nimmt 9 Terrain-Entities jedweder horizontaler / vertikaler Skalierung mit irgendeiner Anzahl an Vertices, erstellt dann die Terrainteile zur Laufzeit und näht sie automatisch zusammen.
Die Terrain-Stücke, die mit diesem Demo geliefert wurden, wurden nicht gerade mit der Maßgabe zueinander zu passen, erstellt. Sehen Sie selbst:
Nichtsdestotrotz leistet der Näh-Code ganze Arbeit indem er die benötigte Info über die Terrains bekommt und die Dinger zusammennäht:
Indem Sie mit diesen Variablen am Anfang der Datei sewer.c herumspielen, können Sie die horizontale und / oder vertikale Skalierung des Terrains setzen.
var horizontal_scale = 5; // horizontal scale of the terrain entities, play with it var vertical_scale = 2; // vertical scale of the terrain entities, play with it
Diese Terrainstücke wurden sehr gut zusammengenäht, obwohl wir eine extrem große vertikale Skalierung gewählt haben. Sehen Sie selbst:
Und so sieht das gesamte Level von oben aus:
Ich wählte eine absolut zufällige Höhenmap für meine Terrains, denn ich wollte sehen, ob der Näh-Algorithmus auch unter extremen Bedingungen gut funktioniert. Eine sehr große Höhenmap sollten Sie in 9 Teile zerlegen, um 9 Terrainstücke zu erstellen - das Endresultat sieht dann natürlicher aus.
Wie immer ist der Code sehr gut kommentiert.
|