Αλγόριθμοι και Συστήματα για 3-Δ Γραφικά Random Terrain Generation Γεωργία Καστίδου.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Καταδίωξη / Διαφυγή. Οι κανόνες • Ένας «φυγάς», ένας ή περισσότεροι «κυνηγοί» • Κινούνται πάνω σε ένα γράφημα • Στην πιο απλή περίπτωση, μία κίνηση ο.
Advertisements

Αλγόριθμοι σχεδίασης βασικών 2D σχημάτων (ευθεία)
Κεφάλαιο Τμηματικός προγραμματισμός
Nikos Louloudakis Nikos Orfanoudakis Irini Genitsaridi
Aυτόνομοι Πράκτορεσ Ενισχυτική μαθηση σto Peg Solitaire
Πίνακες.
Αυτο-συσχέτιση (auto-correlation)
Πίνακες-Αλφαριθμητικά
Εισαγωγή στους Η/Υ Πίνακες.
Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές
ΔΙΔΑΚΤΙΚΕΣ ΔΥΣΚΟΛΙΕΣ ΣΤΟΥΣ ΠΙΝΑΚΕΣ ΠΕΚ ΠΕΙΡΑΙΑ Α΄φάση Επιμόρφωσης Εκπ/κών κλάδου ΠΕ19 Διδακτική της Πληροφορικής Ρόδος, Νοέμβρης 2007.
Προγραμματισμός Ι Πίνακες •Ο πίνακας είναι μία συλλογή μεταβλητών ίδιου τύπου, οι οποίες είναι αποθηκευμένες σε διαδοχικές θέσεις μνήμης. Χρησιμοποιείται.
Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές
Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές
Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο 2: Μονοπάτια και Κύκλοι (Euler) Data Engineering Lab.
Μαθηματικοί Υπολογισμοί Χειμερινό Εξάμηνο η Διάλεξη Επίλυση Εξισώσεων Νοέμβρη 2002.
Robustness in Geometric Computations Christoph M. Hoffmann.
Αλγόριθμος Tonelli-Shanks
Παράδειγμα 2: Υπολογισμός μέγιστου μισθού Σε μια εταιρία εργάζονται 200 υπάλληλοι και είναι γνωστός ο μισθός του καθενός. Να χρησιμοποιηθεί η δομή του.
H Mathematica στην υπηρεσία της Φυσικής
ΠΡΟΒΛΗΜΑΤΑ ΜΕΤΑΦΟΡΑΣ Β. Κώστογλου – Τμήμα Πληροφορικής ΑΤΕΙ-Θ
Επιλογή Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο.
Διαίρει και Βασίλευε πρόβλημα μεγέθους Ν διάσπαση πρόβλημα μεγέθους Ν-k πρόβλημα μεγέθους k.
ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Παχατουρίδη Σάββα(676) Επιβλέπων: Σ
Παράδειγμα 2:Υπολογισμός μέγιστης και ελάχιστης θερμοκρασίας Αλγόριθμος Ελάχιστη_Μέγιστη !Αρχή αλγορίθμου.
ΕΠΛ 231 – Δομές Δεδομένων και Αλγόριθμοι12-1 Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Ο αλγόριθμος του Prim και ο αλγόριθμος του Kruskal.
Κεφάλαιο 2 Κίνηση σε μία διάσταση
Copyright © 2009 Pearson Education, Inc. Κεφάλαιο 3 Κίνηση σε 2 και 3 διαστάσεις, Διανύσματα.
Ενεργή επιλογή αλγορίθμου, Active Algorithm Selection, Feilong Chen and Rong Jin Εύα Σιταρίδη.
3D Space Invader Πετράκης Γιάννης. Περιγραφή παιχνιδιού Αποτελείται από Ένα όχημα που βρίσκεται στο έδαφος, κινείται στις δύο διαστάσεις και πυροβολεί.
Ομάδα Α. Ο υπολογιστής ως επιστημονικό εργαλείο. Λίστες - Πίνακες In[1]:=lista1={a1, 2.1, x, Sqrt[2], I, Sin[x]} Out[1]:={a1, 2.1, x, 2, I, Sin[x]} Η.
Μερικές Διαφορικές Εξισώσεις ΙΙ
Χωρικοί-χρονικοί συμβιβασμοί
Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές
Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές
Advanced Data Indexing (Προηγμένη ευρετηρίαση δεδομένων) Κατακερματισμός – Hashing (1 ο Μέρος)
Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Ενότητα 4 Δ ΕΝΔΡΑ Σταύρος Δ. Νικολόπουλος 1.
ΕΠΛ 231 – Δομές Δεδομένων και Αλγόριθμοι
Αυτόνομοι Πράκτορες ( Εργασία Εξαμήνου ) Απόδραση TUC_Robot από λαβύρινθο ! Χρίστος Παρασκευά
ΕΠΛ 231 – Δομές Δεδομένων και Αλγόριθμοι13-1 Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Ο αλγόριθμος Dijkstra για εύρεση βραχυτέρων μονοπατιών.
1 ΤΜΗΜΑ ΜΠΕΣ Αλγόριθμοι Αναζήτησης Εργασία 1 Τυφλή Αναζήτηση.
Δομές Δεδομένων 1 Θέματα Απόδοσης. Δομές Δεδομένων 2 Οργανώνοντας τα Δεδομένα  Η επιλογή της δομής δεδομένων και του αλγορίθμου επηρεάζουν το χρόνο εκτέλεσης.
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Συναρτήσεις.
Δένδρα ΘΕΩΡΙΑ ΓΡΑΦΩΝ Εργαστήριο Τεχνολογίας & Επεξεργασίας Δεδομένων Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο 3: Δένδρα.
Επιστημονικός Υπολογισμός Ι Πρώτο Εργαστήριο Εισαγωγή στο matlab 15 Οκτωβρίου 2010 Γιώργος Δρακόπουλος ΤΜΗΥΠ.
Κεφάλαιο 3ο Δομές Δεδομένων.
Τι είναι η Κατανομή (Distribution)
ΤΕΙ ΙΟΝΙΩΝ ΝΗΣΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΠΑΡΆΡΤΗΜΑ ΛΕΥΚΑΔΑΣ ΥΠΕΥΘΥΝΗ ΚΑΘΗΓΉΤΡΙΑ Δρ. ΤΣΙΝΤΖΑ ΠΑΝΑΓΙΩΤΑ Οι παρουσιάσεις του μαθήματος βασίζονται στο.
ΤΕΙ ΙΟΝΙΩΝ ΝΗΣΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΠΑΡΆΡΤΗΜΑ ΛΕΥΚΑΔΑΣ ΥΠΕΥΘΥΝΗ ΚΑΘΗΓΉΤΡΙΑ Δρ. ΤΣΙΝΤΖΑ ΠΑΝΑΓΙΩΤΑ Οι παρουσιάσεις του μαθήματος βασίζονται στο.
Για μτ από ατ μέχρι ττ [με_βήμα β] εντολές Τέλος_επανάληψης : περιοχή εντολών μτ : η μεταβλητή της οποίας η τιμή θα περάσει από την αρχική.
ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΕΥΡΕΤΙΚΕΣ ΜΕΘΟΔΟΥΣ Άπληστη Αναζήτηση και Αναζήτηση Α* ΣΠΥΡΟΣ ΛΥΚΟΘΑΝΑΣΗΣ, ΚΑΘΗΓΗΤΗΣ.
ΔΠΘ-ΤΜΗΜΑ ΜΠΔ: ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ Η/Υ 1 Εισαγωγή στη γλώσσα Προγραμματισμού C ΠΙΝΑΚΕΣ (arrays)
דוגמאות - תנועה במישור בהשפעת כוח קבוע
Σήματα και Συστήματα 11 10η διάλεξη. Σήματα και Συστήματα 12 Εισαγωγικά (1) Έστω γραμμικό σύστημα που περιγράφεται από τη σχέση: Αν η είσοδος είναι γραμμικός.
Ακαδημαϊκό Έτος  Ο σκοπός της οπτικής αναγνώρισης χαρακτήρων είναι να μετατρέψει σαρωμένες εικόνες γραπτού κειμένου σε κείμενο ASCII που είναι.
Μέτρα μεταβλητότητας ή διασποράς
Άσκηση 2-Περιγραφικής Στατιστικής
ΔΙΑΧΩΡΙΣΤΙΚΗ ΟΜΑΔΟΠΟΙΗΣΗ Εισαγωγή
Εργο W Σταθερή δύναμη F που μετακινεί σώμα για διάστημα s (χωρίς περιστροφή). Όπου φ η γωνία που σχηματίζει η δύναμη με την μετατόπιση. Μονάδα μέτρησης.
ΜΕΤΑΒΛΗΤΗ ΤΙ ΕΙΝΑΙ; – ΚΑΤΑΝΟΗΣΗ ΤΗΣ ΕΝΝΟΙΑΣ ΠΩΣ ΣΥΜΒΟΛΙΖΕΤΑΙ ΟΡΙΣΜΟΣ
Μορφές κατανομών Αθανάσιος Βέρδης.
Στρατηγικές πληροφορημένης αναζήτησης
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
Φοιτητής: Τσακίρης Αλέξανδρος Επιβλέπων: Ευάγγελος Ούτσιος
Απλή γραμμική παλινδρόμηση
Ερωτήματα Επιλογής σε ACCESS
[Μονοδιάστατοι πίνακες]
Προβλήματα Μεταφοράς: Παραδείγματα και Εφαρμογές
ΘΕΜΑ : ΓΡΑΦΙΚΕΣ ΠΑΡΑΣΤΑΣΕΙΣ ΣΥΝΑΡΤΗΣΕΩΝ 2 ου ΒΑΘΜΟΥ.
Тригонометриялық функциялардың графиктері.
Μεταγράφημα παρουσίασης:

Αλγόριθμοι και Συστήματα για 3-Δ Γραφικά Random Terrain Generation Γεωργία Καστίδου

Περιεχόμενα Τι είναι το Terrain Generation Εφαρμογές του Terrain Generation Είδη Terrain Generation Random Terrain Generation Αλγόριθμοι για Random Terrain Generation

Τι είναι Terrain Generation? Terrain Generation: Είναι η δημιουργία της διαμόρφωσης του εδάφους. Δηλαδή η δημιουργία βουνών, λόφων κτλ.

Εφαρμογές Terrain Generation Δημιουργία Landscapes για προσομοιώσεις Δημιουργία Landscapes για παιχνίδια

Heightmaps Ο βασικός τρόπος για τη δημιουργία 3-Δ terrains είναι μέσω της χρήσης των heightmaps. Ένα heightmap είναι ένας απλός δισδιάστατος πίνακας τιμών. Κάθε μια από τις τιμές του παραπάνω πίνακα αναπαριστά το ύψος του terrain στο σημείο της συγκεκριμένης τιμής. Για να αποδοθεί το heightmap στις τρεις διαστάσεις δημιουργείται ένα σύνολο σημείων (mesh) εισάγοντας μέσω των δεικτών του πίνακα το ύψος σε κάθε κορυφή και θέτοντας το ίσο με την τιμή του heightmap στο σημείο εκείνο.

Heightmaps

Αλγόριθμοι Random Terrain Generation Hill – Circle Algorithm Fault Algorithm

The Fault Algorithm Αρχικά θεωρούμε ένα επίπεδο height field του οποίου όλες οι τιμές είναι 0.

The Fault Algorithm 1 iteration

The Fault Algorithm Το πρώτο πρόβλημα είναι πως πρέπει να δημιουργηθεί μια τυχαία ευθεία, η οποία διαιρεί σε δύο κομμάτια το terrain. Λύση: The Normal Form –ax + bz = c όπου a*a + b*b = 1 και c >= 0 –a = sin(v) b = cos(v) όπου v είναι μια τυχαία τιμή. –Η απόσταση από ένα σημείο (x1,z1), από μια ευθεία, ax+by-c=0, είναι: dist = a*x1 + b*z1 - c

The Fault Algorithm

1 Εισαγωγή 2 Εισαγωγές

The Fault Algorithm 3 Εισαγωγές 4 Εισαγωγές

The Fault Algorithm 16 Εισαγωγές 100 Εισαγωγές

The Fault Algorithm 400 Εισαγωγές

The Fault Algorithm Variations The Step Function The sine Function

The Fault Algorithm The cosine Function

The Fault Algorithm The Step Function. Iterations 1000

The Fault Algorithm Sine Function. Iterations 1000

The Fault Algorithm Cosine Function. Iterations 1000

Hill Algorithm Βήμα 1: Αρχικοποίηση το terrain θέτοντας τις τιμές όλων των υψών σε 0. Βήμα 2: Επιλογή ενός τυχαίου σημείου πάνω ή κοντά στο terrain και μιας τυχαίας ακτίνας (έστω r) μεταξύ μιας προκαθορισμένης μέγιστης και ελάχιστης τιμής. Βήμα 3: Δημιουργία λόφου στο terrain με κέντρο το σημείο (x 1, y 1 ), δοθέντος της ακτίνας r. –Παράδειγμα: Το ύψος του λόφου στο σημείο (x 1, y 1 ) είναι z = r 2 – (( x 1 – x 2 ) 2 + ( y 1 – y 2 ) 2 ) Βήμα 4: Επιστροφή στο βήμα 2 και επανάληψη τόσες φορές όσες χρειάζονται. 5. Κανονικοποίηση του terrain. 6. Flatten out the valleys.

Hill Algorithm Αγνοεί τις αρνητικές τιμές ύψους. Ένα ύψος z θα έχει αρνητικές τιμές εάν το σημείο του οποίου υπολογίζεται το ύψος είναι βρίσκεται σε απόσταση από το κέντρο του λόφου που ανήκει μεγαλύτερη από την ακτίνα. Όταν δύο λόφοι ταυτίζονται προσθέτουμε το ύψος του ενός στον άλλον.

Hill Algorithm Παράδειγμα 1 Εισαγωγή

Hill Algorithm Examples

Hill Algorithm Κανονικοποίηση Ο αλγόριθμος Hill δεν περιορίζει αυτόματα τις τιμές των υψών σε κάποια περιοχή. Ιδανικά οι τιμές των υψών θα κυμαίνονταν από το 0 στο 1, ώστε να μπορούμε να αλλάξουμε το σύστημα αναφοράς ολόκληρου του terrain κάνοντας το όσο ψηλό θέλουμε χωρίς να επηρεάζουμε τίποτα άλλο. Για να το επιτύχουμε αυτό κανονικοποιούμε το terrain.

Hill Algorithm Κανονικοποίηση Εύρεση νέου z: z norm = ( z – min) / ( max – min )

Hill Algorithm Flattening Θέλουμε έναν τρόπο να «πλαταίνουμε» το terrain χωρίς να ισοπεδώσουμε τα βουνά. Ένας απλός τρόπος να πλαταίνουμε τις χαμηλές περιοχές είναι να υψώσουμε στο τετράγωνο την τιμή κάθε ύψους. Αυτό θα έχει σαν αποτέλεσμα να μειωθεί η μέση τιμή των υψών χωρίς να επηρεαστεί σε μεγάλο βαθμό η μέγιστη τιμή.

Hill Algorithm Flattening

Hill Algorithm

Δημιουργία Νησιών με τον αλγόριθμο Hill Θέλουμε να έχουμε τους λόφους ομαδοποιημένους προς το κέντρο του heightmap Εύρεση τυχαίων τιμών: απόσταση (d) και θήτα (θ). –Η απόσταση υποδηλώνει το πόσο μακριά από το κέντρο του heightmap βρίσκεται ο λόφος που θέλουμε να τοποθετήσουμε: 0  d  (1/2)*μέγεθος heightmap –To θήτα καθορίζει προς τα ποια διεύθυνση από το κέντρο θα τοποθετηθεί ο λόφος. 0  θ  2*pi Υπολογισμός του κέντρου του λόφου χρησιμοποιώντας τα θ,d : x=heightmap_size/2 + cos(θ) *d y=heightmap_size/2 + cos(θ) *d

Δημιουργία Νησιών με τον αλγόριθμο Hill

Προσθήκη Νερού

Αναφορές

Τέλος Παρουσίασης