Computer graphics & visualization Procedural Terrain Generation Hager Simon Proseminar Gamedesign.

Slides:



Advertisements
Ähnliche Präsentationen
8. Termin Teil B: Wiederholung Begriffe Baum
Advertisements

Falls Algorithmen sich selbst rekursiv aufrufen, so kann ihr Laufzeitverhalten bzw. ihr Speicherplatzbedarf in der Regel durch eine Rekursionsformel (recurrence,
Vom graphischen Differenzieren
Geometrie von Objektoberflächen
Wilhelm-Raabe-Schule Fachbereich: Mathematik Thema: Lineare Funktionen
WS 05/06Automatische Akquisition linguistischen Wissens1 Partielles Wissen erweitern 1.Zusammenhang mit bisherigen Algorithmen 2.Vom offensichtlichen zum.
R. Der - Vorlesung Algorithmen und Datenstrukturen (Magister)
Simulated Annealing Marco Block & Miguel Domingo Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002.
Mathematik des Bridge Tanja Schmedes.
Kombinatorische Topologie in der 3d Geomodellierung
Theorie psychometrischer Tests, III
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (19 - Analyse natürlicher Bäume) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Tobias Lauer.
Kapitel 5 Stetigkeit.
2. Univariate Regressionsanalyse 2.1 Das statische Regressionsmodell
Algorithmische Geometrie
1. Warum ist „Kartenkunde“ für die Feuerwehr wichtig ?
Excel Kurs Teil II Allgemeines zu Excel-Funktionen, SUMME, MIN, MAX Mehrwertsteuer-Berechnungen, absolute und relative Bezüge F. Bäumer.
So animieren Sie Kreisdiagramme mit der Eingangs-Animation „Rad“
Addierwerke.
Modellierung von Baumstrukturen mit einem einzigen Polygonnetz
Punktbeschriftung mit vier Rechtecken gleicher Höhe (Anzahlmaximierung) Julia Löcherbach.
Wie macht man ein Sudoku? Transformations-Methode:
Effiziente Algorithmen
Ausgleichungsrechnung II
in der medizinischen Bildverarbeitung
Moin. Ich benutze PPT 2002 und möchte drei Bilder nacheinander 1
Effiziente Algorithmen
Abschlussvortrag zur Studienarbeit
Geoinformation II Vorlesung 4 SS 2001 Voronoi-Diagramme.
Zeichnen linearer Funktionen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Efficient Alias Set Analysis Using SSA Form Proseminar Programmanalyse WS 11/12 André Hunke.
Einführung in die Programmierung
Klicken Sie in der Meldungsleiste auf Bearbeitung aktivieren,
Geometrie : Rekonstruktion
Profile zeichnen – verschiedene Möglichkeiten
STATISIK LV Nr.: 0028 SS Mai 2005.
Hallo Ich möchte einen Text einer Folie nicht einfach nur einfliegen lassen, sondern genau diesen Text, der schon an einer bestimmten Stelle steht, vergrößern.
ProSeminar WS 2007/08 Leo Hackstein
Lineare Funktionen und ihre Schaubilder, die Geraden
Referatsthema - Excel.
Erstellen eines Impossibles:
Linking and Brushing on ODBC Basis
Michael Schmidt computer graphics & visualization Texture Mapping Lapped Textures.
Integration oberflächenbestimmender Objekte ins DGM Seminar GIS IV SS
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II 6. Sem. Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms.
Musterlösung zum Arbeitsblatt Nr. 1
Statistik – Regression - Korrelation
Vom graphischen Differenzieren
Geometric Representation
Klimadapt: Interpolation der REMO UBA Daten und Untersuchung von Kühl- und Heizgradtagen mit StartClim Daten Universität für Bodenkultur, Wien Department.
Routenplanung querfeldein - Geometric Route Planning
Vortrag Relative Orientierung
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Voronoi-Diagramme.
Konvexe Hüllen (Convex Hulls)
Färben der Knoten von Graphen
Institut für Informationssysteme Technische Universität Braunschweig Institut für Informationssysteme Technische Universität Braunschweig Verdrängung von.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II 6. Sem. Vorlesung 4 4. Mai 2000 Voronoi-Diagramm.
Spärliche Kodierung von Videos natürlicher Szenen Vortragender: Christian Fischer.
Lineare Optimierung Nakkiye Günay, Jennifer Kalywas & Corina Unger Jetzt erkläre ich euch die einzelnen Schritte und gebe Tipps!
REKURSION + ITERATION.
 Präsentation transkript:

computer graphics & visualization Procedural Terrain Generation Hager Simon Proseminar Gamedesign

computer graphics & visualization Procedural Terrain Generation Hager Simon, Gliederung Einführung Einführung Erstellen des Terrains Erstellen des Terrains – 1/f noise – Voronoi Diagramme – Kombination Erosion Erosion – Hydraulic erosion – Thermal erosion – Kombination Abschluss Abschluss

computer graphics & visualization Procedural Terrain Generation Hager Simon, Einführung Motivation: Motivation: – Automatisiertes Erstellen von Landschaften für ein Strategiespiel Zu beachten: Zu beachten: – Performanz – Aussehen – Spielbarkeit Unüberwindbare Grenzen Unüberwindbare Grenzen Großteil der Karte erreichbar Großteil der Karte erreichbar Genug Bauplatz Genug Bauplatz

computer graphics & visualization Procedural Terrain Generation Hager Simon, Einführung

computer graphics & visualization Procedural Terrain Generation Hager Simon, Einführung Leicht Graphisch darzustellen Leicht Graphisch darzustellen Leicht zu manipulieren Leicht zu manipulieren Einfach zu Implementieren Einfach zu Implementieren Repräsentation des Terrains durch Heightmap Repräsentation des Terrains durch Heightmap

computer graphics & visualization Procedural Terrain Generation Hager Simon, Einführung Definition von Aussehen und Spielbarkeit durch Zahlen: Definition von Aussehen und Spielbarkeit durch Zahlen: Erosion soll liefern: Erosion soll liefern: Große ebene Flächen Große ebene Flächen – Mittelwert der Steigung der Map möglichst klein Steile Hänge Steile Hänge – Standardabweichung der Steigung möglichst groß

computer graphics & visualization Procedural Terrain Generation Hager Simon, Einführung Festlegen einer 2ten Heightmap s, in der die Steigung jedes Punktes gespeichert wird: Festlegen einer 2ten Heightmap s, in der die Steigung jedes Punktes gespeichert wird:

computer graphics & visualization Procedural Terrain Generation Hager Simon, Einführung Berechnung des Arithmetischen Mittels: Berechnung des Arithmetischen Mittels: Berechnung der Standardabweichung: Berechnung der Standardabweichung: Erosion: Erosion:

computer graphics & visualization Procedural Terrain Generation Hager Simon, Einführung Spielbarkeits-Faktor durch 2 Werte: Spielbarkeits-Faktor durch 2 Werte: Erreichbarkeit (durch Einheiten) Erreichbarkeit (durch Einheiten) Bauplatz Bauplatz Festlegen einer Erreichbarkeitsmap A mit Festlegen einer Erreichbarkeitsmap A mit – A = 1 wenn s < T – A = 0 wenn s T

computer graphics & visualization Procedural Terrain Generation Hager Simon, Einführung Entfernen aller Bereiche die eine n x n große Einheit nicht betreten kann Entfernen aller Bereiche die eine n x n große Einheit nicht betreten kann Den größten zusammenhängenden Teil auswählen Den größten zusammenhängenden Teil auswählen

computer graphics & visualization Procedural Terrain Generation Hager Simon, Einführung Erreichbarkeits Faktor u = Verhältnis der Summe aller 1en zur Gesamtmap Erreichbarkeits Faktor u = Verhältnis der Summe aller 1en zur Gesamtmap Prinzipiell analog für Gebäude, mit kleinerem T und größerem n die building score β errechnen Prinzipiell analog für Gebäude, mit kleinerem T und größerem n die building score β errechnen Gesamtgüte der Karte ist damit dann: Gesamtgüte der Karte ist damit dann: ω = ε x β x u

computer graphics & visualization Procedural Terrain Generation Hager Simon, Spectral synthesis Generieren mehrerer Ebenen durch: Generieren mehrerer Ebenen durch: Bestimmten Punkten in festem Abstand wird Zufallswert zugewiesen Bestimmten Punkten in festem Abstand wird Zufallswert zugewiesen Restliche Punkte werden Interpoliert Restliche Punkte werden Interpoliert Mehrmals wiederholen, jeweils mit doppelter Auflösung und halber maximaler Höhe, bis gewünschte Auflösung der heightmap erreicht ist Mehrmals wiederholen, jeweils mit doppelter Auflösung und halber maximaler Höhe, bis gewünschte Auflösung der heightmap erreicht ist Übereinanderlegen aller Ebenen Übereinanderlegen aller Ebenen

computer graphics & visualization Procedural Terrain Generation Hager Simon, Spectral synthesis

computer graphics & visualization Procedural Terrain Generation Hager Simon, Spectral synthesis ε = Relativ langsam Relativ langsam

computer graphics & visualization Procedural Terrain Generation Hager Simon, Midpoint displacement Zufällige Werte für die vier Eckpunkte Zufällige Werte für die vier Eckpunkte Mittelpunkt kriegt den Wert des Mittels der Eckpunkte + zufälligen Offset Mittelpunkt kriegt den Wert des Mittels der Eckpunkte + zufälligen Offset Rekursiv ausführen bis jeder Punkt der Heightmap einen Wert enthält Rekursiv ausführen bis jeder Punkt der Heightmap einen Wert enthält Offset bei jeder Rekursion verkleinern Offset bei jeder Rekursion verkleinern

computer graphics & visualization Procedural Terrain Generation Hager Simon, Midpoint displacement ε = 0.478

computer graphics & visualization Procedural Terrain Generation Hager Simon, 1/f noise Gleichmäßige, Homogene Verteilung Gleichmäßige, Homogene Verteilung Unrealistisch Unrealistisch Spielerisch nicht toll, da keine großen (längere) Steigungen zum Beschränken der Karte erzeugt werden Spielerisch nicht toll, da keine großen (längere) Steigungen zum Beschränken der Karte erzeugt werden

computer graphics & visualization Procedural Terrain Generation Hager Simon, Voronoi Diagramme Zufällige Feature points setzen Zufällige Feature points setzen Die Senkrechte in der Mitte zwischen der Verbindungsgeraden zweier Punkte ergibt eine Grenze: Die Senkrechte in der Mitte zwischen der Verbindungsgeraden zweier Punkte ergibt eine Grenze:

computer graphics & visualization Procedural Terrain Generation Hager Simon, Voronoi Diagramme Berechnen der heightmap durch: Berechnen der heightmap durch: h = c 1 d 1 + c 2 d 2 + c 3 d c n d n d 1 = Abstand zum nächsten feature point d 2 = Abstand zum 2. nähsten feature point c = beliebige Konstanten

computer graphics & visualization Procedural Terrain Generation Hager Simon, Voronoi Diagramme c2 = 1 c1 = -1 c3 = 1 c1 = 1 c2 = -1

computer graphics & visualization Procedural Terrain Generation Hager Simon, Voronoi Diagramme Mögliche Verbesserungen: Mögliche Verbesserungen: Vergrößern der Abstände zwischen den Hügeln: Vergrößern der Abstände zwischen den Hügeln: Entfernen von Zufälligen Hügeln: Entfernen von Zufälligen Hügeln:

computer graphics & visualization Procedural Terrain Generation Hager Simon, Voronoi Diagramme Fazit: Fazit: Zufälligeres Terrain Zufälligeres Terrain Steile Hänge Steile Hänge Aber: Aber: Völlig unspielbar Völlig unspielbar Unrealistisches Aussehen Unrealistisches Aussehen Niedriges ε = Niedriges ε = 0.347

computer graphics & visualization Procedural Terrain Generation Hager Simon, Analyse 1/f noise ergibt schönes, aber langweiliges Terrain 1/f noise ergibt schönes, aber langweiliges Terrain Voronoi Diagramme zufälliger, aber unspielbar Voronoi Diagramme zufälliger, aber unspielbar Lösung: Kombination der beiden: Lösung: Kombination der beiden:

computer graphics & visualization Procedural Terrain Generation Hager Simon, Combination Aber: gerade Kanten der Vornoi-Diagramme noch vorhanden Aber: gerade Kanten der Vornoi-Diagramme noch vorhanden ε = Kombination der beiden verschiedenen Algorithmen Kombination der beiden verschiedenen Algorithmen 1/3 Voronoi diagram 1/3 Voronoi diagram 2/3 Midpoint displacement 2/3 Midpoint displacement

computer graphics & visualization Procedural Terrain Generation Hager Simon, Perturbation Lösung: perturbation (Störungen) Lösung: perturbation (Störungen) Verschieben von Zellen mittels noise-Funktionen Verschieben von Zellen mittels noise-Funktionen Um maximal N/4 Zellen Um maximal N/4 Zellen

computer graphics & visualization Procedural Terrain Generation Hager Simon, Combination

computer graphics & visualization Procedural Terrain Generation Hager Simon, Erosion Simulation von natürlicher Erosion (Umwelteinflüsse) Simulation von natürlicher Erosion (Umwelteinflüsse) Verschönerung Verschönerung Spielbarkeit verbessern: Spielbarkeit verbessern: Abhänge steiler machen Abhänge steiler machen Ebenes Terrain stärker einebenen Ebenes Terrain stärker einebenen

computer graphics & visualization Procedural Terrain Generation Hager Simon, Hydraulic erosion Hinzufügen von Wasser, durch eine 2te Heightmap (w) Hinzufügen von Wasser, durch eine 2te Heightmap (w) Auflösen von Gestein: für jeden Punkt: h = h – w Auflösen von Gestein: für jeden Punkt: h = h – w Wasser fließen lassen: Wasser fließen lassen: Wasser verdunsten lassen: h = h + w Wasser verdunsten lassen: h = h + w Wiederholen Wiederholen

computer graphics & visualization Procedural Terrain Generation Hager Simon, Hydraulic erosion

computer graphics & visualization Procedural Terrain Generation Hager Simon, Thermal erosion 1.Festlegen eines Grenzwertes T 2.Ist der Höhenunterschied d zwischen zwei Punkten < T passiert nichts, ansonsten wird vom höheren Punkt solange Gestein abgegeben bis d = T Simuliert Wegbrechen von Gestein von Hängen Simuliert Wegbrechen von Gestein von Hängen

computer graphics & visualization Procedural Terrain Generation Hager Simon, Thermal erosion

computer graphics & visualization Procedural Terrain Generation Hager Simon, Analyse Thermal erosion wäre schnell, produziert aber keine spielbaren Ergebnisse Thermal erosion wäre schnell, produziert aber keine spielbaren Ergebnisse Hydraulic erosion ebnet Terrain schön flach ein und lässt die Abhänge steil, ist aber zu langsam Hydraulic erosion ebnet Terrain schön flach ein und lässt die Abhänge steil, ist aber zu langsam Idee: Die Vorteile der hydraulic erosion in den thermal erosion Algorithmus einbauen Idee: Die Vorteile der hydraulic erosion in den thermal erosion Algorithmus einbauen Lösung: Einfaches Umdrehen des thermal erosion Algorithmus, statt Einebnen wenn d > T, jetzt: Einebnen wenn d T Lösung: Einfaches Umdrehen des thermal erosion Algorithmus, statt Einebnen wenn d > T, jetzt: Einebnen wenn d T

computer graphics & visualization Procedural Terrain Generation Hager Simon, Analyse

computer graphics & visualization Procedural Terrain Generation Hager Simon, Analyse

computer graphics & visualization Procedural Terrain Generation Hager Simon, Abschluss Vollständig automatisches Generieren von Terrain möglich, aber: Vollständig automatisches Generieren von Terrain möglich, aber: Spielbarkeit nicht garantierbar Spielbarkeit nicht garantierbar Balanceprobleme Balanceprobleme Von Hand erstelle Landschaften schöner als zufällig generierte Von Hand erstelle Landschaften schöner als zufällig generierte Darum kaum Spiele mit generierten (Außen-)Levels Darum kaum Spiele mit generierten (Außen-)Levels

computer graphics & visualization Procedural Terrain Generation Hager Simon, Abschluss Fragen ?