Γραφικά Υπολογιστών (Computer Graphics) (3781)
ΓΕΩΡΓΙΟΣ ΠΑΠΑΪΩΑΝΝΟΥ (Georgios Papaioannou)
Σκοπός του Μαθήματος
Αυτό το εισαγωγικού επιπέδου μάθημα στα γραφικά υπολογιστών, επικεντρώνεται στην κατανόηση της γεωμετρίας των δύο και τριών διαστάσεων και στους βασικούς αλγόριθμους σχεδίασης χρωματισμού και φωτισμού δύο και τριών διαστάσεων με απευθείας απεικόνιση. Οι φοιτητές έχουν την ευκαιρία να γνωρίσουν τους αλγόριθμους που χρησιμοποιούνται σήμερα για τη σχεδίαση γραφικών πραγματικού χρόνου και φωτορεαλιστικών γραφικών, να μάθουν για το σχετικό hardware γραφικών και να εξασκηθούν παράλληλα σε αντίστοιχες φροντιστηριακές διαλέξεις στη μηχανή γραφικών Unity και σε εργαστηριακό μάθημα προγραμματισμού τρισδιάστατων γραφικών σε OpenGL / C++.
Περιεχόμενο του μαθήματος
- Εισαγωγή: Η ψηφιακή εικόνα, εφαρμογές των γραφικών , είδη και μορφές αναπαράστασης γραφικών. Συσκευές απεικόνισης και καταγραφής γραφικών.
- Αλγόριθμοι Σχεδίασης Βασικών Σχημάτων: Γραμμές, πολύγωνα, γέμισμα περιοχών, πράξεις με εικόνες και buffers, antialiasing / supersampling.
- Σχεδίαση στο Επίπεδο: Συστήματα Συντεταγμένων, εισαγωγή στους μετασχηματισμούς, μετασχηματισμοί στο επίπεδο, αντιστροφή μετασχηματισμών και μετασχηματισμοί συστημάτων συντεταγμένων. Αποκοπή.
- Σχεδίαση στο Χώρο: Συστήματα συντεταγμένων στο χώρο, μετασχηματισμοί στις 3 διαστάσεις, ιεραρχίες μετασχηματισμών και κινηματικές αλυσίδες. Σύνθεση αντικειμένων.
- Βασική Απεικόνιση - Προβολές: Ο εικονικός παρατηρητής, συστήματα συντεταγμένων παρατηρητή. Η διαδικασία απεικόνισης. Προβολές.
- Βασική απεικόνιση - Σχεδίαση Πολυγώνων: Δομές και χαρακτηριστικά πολυγωνικών αντικειμένων. Απομάκρυνση πίσω επιφανειών. Απόκρυψη/ταξινόμηση επιφανειών, scan-conversion. Ο αλγόριθμος Ζ-Buffer. Υλοποιήσεις σε hardware.
- Φωτισμός: Μοντέλα φωτισμού - γενικά, συνάρτηση κατανομής αμφίδρομης ανακλαστικότητας. Η φυσική του φωτισμού. Εμπειρικά μοντέλα τοπικού φωτισμού και το μοντέλο Phong. Αλγόριθμοι φωτισμού (ενοποίηση με το scan-conversion, επίπεδη σκίαση, οι αλγόριθμοι Gouraud και Phong).
- Απεικόνιση Υφής: Χρήση - εφαρμογές και είδη απεικόνισης υφής. Απεικόνιση εικόνων (texture maps). Συντεταγμένες υφής, προβολές υφής, aliasing/antialiasing, mip-mapping. Μετασχηματισμοί στο χώρο της υφής. Παραμετρική υφή.
- Βασική Κίνηση: Ορισμοί, συμβάσεις, πρότυπα. Μοντέλα κίνησης (Key-framing, συναρτησιακή κίνηση, καταστατικά μοντέλα και προσομοίωση, συμπεριφορές). Συναρτήσεις παρεμβολής κίνησης. Σύνθεση κινήσεων - ιεραρχίες κινήσεων.
- Δημιουργία Σκιών: Γενικά περί σκιών, o αλγόριθμος shadow volumes και η υλοποίησή του ως stencil shadow volumes.
- Παρακολούθηση ακτίνων (ray-tracing). Ο βασικός αλγόριθμος παρακολούθησης ακτίνων, έλεγχοι τομής ακτίνων με γεωμετρικά στοιχεία, βασικές δομές.
Διαλέξεις για τη μηχανή Unity: Μέρος των διαλέξεων είναι αφιερωμένο στην εκμάθηση της μηχανής παιχνιδιών Unity με βάση την οποία θα δουν οι φοιτητές την εφαρμογή ορισμένων από τα αντικείμενα των θεωρητικών διαλέξεων.
Εργαστήρια: Παράλληλα με τις παραδόσεις του θεωρητικού μέρους του μαθήματος, διεξάγεται εργαστηριακό μάθημα προγραμματισμού τρισδιάστατων γραφικών σε OpenGL (και C/C++) κατά τέτοιο τρόπο ώστε: να συνδυάζεται χρονικά και εννοιολογικά με την ύλη που διδάσκεται στο θεωρητικό μέρος του μαθήματος. Η παρακολούθηση του εργαστηρίου είναι προαιρετική. Το εργαστήριο απαιτεί 7 2ωρα ανά τάξη φοιτητών. Οι φοιτητές οργανώνονται σε ομάδες των 2-3 ατόμων ανά σταθμό εργασίας. Η συγκεκριμένη πλατφόρμα βοηθάει τους φοιτητές να εξοικειωθούν γρήγορα με βασικές λειτουργίες γραφικών περιβαλλόντων και να βρουν στο διαδίκτυο πολλές πηγές κώδικα, παραδειγμάτων και εφαρμογών σε τρισδιάστατα γραφικά. Ο συνδυασμός GLUT/OpenGL παρέχει μια πραγματικά cross-platform λύση προγραμματισμού γραφικών με πλήρη υποστήριξη από το αντίστοιχο hardware γραφικών.
Προαπαιτούμενες γνώσεις
- Γραμμική Άλγεβρα
- Γνώσεις προγραμματισμού (κατά προτίμηση σε C/C++, αλλά όχι απαραίτητα)
Less
Σκοπός του Μαθήματος
Αυτό το εισαγωγικού επιπέδου μάθημα στα γραφικά υπολογιστών, επικεντρώνεται στην κατανόηση της γεωμετρίας των δύο και τριών διαστάσεων και στους βασικούς αλγόριθμους σχεδίασης χρωματισμού και φωτισμού δύο και τριών διαστάσεων με απευθείας απεικόνιση. Οι φοιτητές έχουν την ευκαιρία να γνωρίσουν τους αλγόριθμους που χρησιμοποιούνται σήμερα για τη σχεδίαση γραφικών πραγματικού χρόνου και φωτορεαλιστικών γραφικών, να μάθουν για το σχετικό hardware γραφικών και να εξασκηθούν παράλληλα σε αντίστοιχες φροντιστηριακές διαλέξεις στη μηχανή γραφικών Unity και σε εργαστηριακό μάθημα προγραμματισμού τρισδιάστατων γραφικών σε OpenGL / C++.
Περιεχόμενο του μαθήματος
- Εισαγωγή: Η ψηφιακή εικόνα, εφαρμογές των γραφικών , είδη και μορφές αναπαράστασης γραφικών. Συσκευές απεικόνισης και καταγραφής γραφικών.
- Αλγόριθμοι Σχεδίασης Βασικών Σχημάτων: Γραμμές, πολύγωνα, γέμισμα περιοχών, πράξεις με εικόνες και buffers, antialiasing / supersampling.
- Σχεδίαση στο Επίπεδο: Συστήματα Συν
Σκοπός του Μαθήματος
Αυτό το εισαγωγικού επιπέδου μάθημα στα γραφικά υπολογιστών, επικεντρώνεται στην κατανόηση της γεωμετρίας των δύο και τριών διαστάσεων και στους βασικούς αλγόριθμους σχεδίασης χρωματισμού και φωτισμού δύο και τριών διαστάσεων με απευθείας απεικόνιση. Οι φοιτητές έχουν την ευκαιρία να γνωρίσουν τους αλγόριθμους που χρησιμοποιούνται σήμερα για τη σχεδίαση γραφικών πραγματικού χρόνου και φωτορεαλιστικών γραφικών, να μάθουν για το σχετικό hardware γραφικών και να εξασκηθούν παράλληλα σε αντίστοιχες φροντιστηριακές διαλέξεις στη μηχανή γραφικών Unity και σε εργαστηριακό μάθημα προγραμματισμού τρισδιάστατων γραφικών σε OpenGL / C++.
Περιεχόμενο του μαθήματος
- Εισαγωγή: Η ψηφιακή εικόνα, εφαρμογές των γραφικών , είδη και μορφές αναπαράστασης γραφικών. Συσκευές απεικόνισης και καταγραφής γραφικών.
- Αλγόριθμοι Σχεδίασης Βασικών Σχημάτων: Γραμμές, πολύγωνα, γέμισμα περιοχών, πράξεις με εικόνες και buffers, antialiasing / supersampling.
- Σχεδίαση στο Επίπεδο: Συστήματα Συν
