1 | 'ΓΡΑΦΙΚΑ ΚΑΙ ΕΙΚΟΝΙΚΗ ΠΡΑΓΜΑΤΙΚΟΤΗΤΑ' | Μουστάκας Κ., Παλιόκας Ι., Τσακίρης A., Τζοβάρας Δ. |
Πατήστε πάνω στους τίτλους των υποκεφαλαίων ή μεταφερθείτε στην αρχική σελίδα.
2015 |
ΚΕΦΑΛΑΙΟ 1: ΕΙΣΑΓΩΓΗ
|
|
ΣύνοψηΣτο πρώτο κεφάλαιο του βιβλίου μετά από μια συζήτηση για τα προαπαιτούμενα και τον προτεινόμενο τρόπο διδασκαλίας, γίνεται μια εισαγωγή στα περιεχόμενα του βιβλίου. Στη συνέχεια δίνεται ένα πρακτικό παράδειγμα υλοποίησης μιας σκηνής γραφικών στα πλαίσια του οποίου παρουσιάζονται με παραδείγματα τα περισσότερα κεφάλαια του βιβλίου. Τέλος, δίνονται κάποιες ενδεικτικές εφαρμογές στην περιοχή των γραφικών και της εικονικής πραγματικότητας. Προαπαιτούμενη γνώσηΤο κεφάλαιο αυτό δεν απαιτεί γνώση άλλων αντικειμένων για την κατανόησή του. Στην παράγραφο 1.1.2 γίνεται μια συζήτηση περί της προαπαιτούμενης γνώσης για την κατανόηση όλου του βιβλίου. |
Το βιβλίο αυτό έχει ως στόχο την παρουσίαση των σημαντικότερων στοιχείων των συστημάτων Γραφικών και Εικονικής Πραγματικότητας στον αναγνώστη, ο οποίος μπορεί να είναι προπτυχιακός ή μεταπτυχιακός φοιτητής, ερευνητής ή εργαζόμενος στην περιοχή αυτή. Πολλές από τις έννοιες που πραγματεύεται έχουν αναπτυχθεί την τελευταία τριακονταετία, είναι ώριμες και θεωρούνται θεμελιώδεις στα Γραφικά. Κάποιες άλλες, ειδικά στα πιο προχωρημένα κεφάλαια του βιβλίου έχουν αναπτυχθεί πιο πρόσφατα και μπορούν να θεωρηθούν τεχνολογίες αιχμής.
Τα Γραφικά, κυρίως, αλλά και η Εικονική Πραγματικότητα είναι έννοιες ελαφρώς παρεξηγημένες στην ελληνική γλώσσα. Δε θα πρέπει να συγχέονται με την περιοχή της Γραφιστικής αλλά και των Γραφικών Διεπαφών Χρήστη (GUI-Graphical User Interfaces). Για το λόγο αυτό αναφέρουμε παρακάτω τι πραγματεύεται το παρόν βιβλίο και τι όχι.
Τι θα απαντήσει το παρόν βιβλίο:
Τι δε θα απαντήσει το παρόν βιβλίο:
Βάσει των παραπάνω πρέπει να σημειωθεί ότι το βιβλίο αυτό έχει ως στόχο να παρουσιάσει τα θεμέλια της περιοχής των Γραφικών και της Εικονικής Πραγματικότητας, να μεταδώσει στον αναγνώστη πληροφορία για το πώς ακριβώς δουλεύει ένα τέτοιο σύστημα και όχι να τον εκπαιδεύσει σε ένα συγκεκριμένο εργαλείο λογισμικού.
Η περιοχή των Γραφικών και της Εικονικής Πραγματικότητας είναι ένα αντικείμενο αρκετά πολύπλοκο από πολλές απόψεις. Χρησιμοποιεί μαθηματικές έννοιες, οι οποίες υλοποιούνται με προγράμματα σε κάποια γλώσσα προγραμματισμού, ενώ παράλληλα οι περισσότερες έννοιες που πραγματεύεται, όπως για παράδειγμα ο φωτισμός και οι δυναμικές προσομοιώσεις έχουν άμεση σχέση με τους φυσικούς νόμους. Έτσι, για να είναι εφικτή η εστιασμένη παρουσίαση, μέσω του βιβλίου, των σημαντικότερων στοιχείων ενός συστήματος γραφικών υποθέτουμε ότι ο αναγνώστης έχει ήδη γνώση των παρακάτω αντικειμένων:
Γραμμική Άλγεβρα – Μαθηματικά: Ένα εικονικό περιβάλλον απαρτίζεται από γεωμετρικά αντικείμενα τα οποία αναπαρίστανται σε έναν τρισδιάστατο ευκλείδειο χώρο. Τα αντικείμενα αυτά περιγράφονται ως σύνολα σημείων (διανυσμάτων) ή συνηθέστερα ως σύνολα στοιχειωδών γεωμετρικών οντοτήτων, όπως είναι τα τρίγωνα, τα οποία όμως και πάλι είναι τριάδες σημείων. Οποιαδήποτε κίνηση του αντικειμένου ή του σημείου παρατήρησης περιγράφεται από τους κατάλληλους συσχετισμένους μετασχηματισμούς, οι οποίοι εν γένει ανάγονται σε πολλαπλασιασμούς πινάκων. Η γραμμική άλγεβρα είναι το σημαντικότερο προαπαιτούμενο για το παρόν βιβλίο.
Προγραμματισμός: Η υλοποίηση ενός συστήματος Γραφικών ή/και Εικονικής Πραγματικότητας γίνεται γράφοντας ένα πρόγραμμα σε κάποια γλώσσα προγραμματισμού. Για το βιβλίο αυτό, θεωρούμε ότι ο αναγνώστης έχει γνώσεις κάποιας γλώσσας προγραμματισμού. Σε κάποια κεφάλαια δίνονται παραδείγματα σε μορφή ψευδοκώδικα και κάποιες φορές δίνεται και κώδικας συνήθως σε γλώσσα C, τον οποίο μπορεί ο αναγνώστης να χρησιμοποιήσει άμεσα. Η γνώση προγραμματισμού είναι ένα σημαντικό προαπαιτούμενο.
Φυσική: Οι γνώσεις φυσικής είναι επιθυμητές, διότι πολλά από τα συστήματα Γραφικών είναι εμπνευσμένα από φυσικές διεργασίες. Έτσι οι αλγόριθμοι φωτισμού βασίζονται στην κλασική αλληλεπίδραση φωτός και ύλης την οποία «προσπαθούν» να μιμηθούν. Ακόμα οι δυναμικές προσομοιώσεις έχουν ως στόχο την αλγοριθμική υλοποίηση των νόμων της κλασικής Νευτώνιας μηχανικής. Δε θα λέγαμε, όμως, ότι είναι απαραίτητη η εις βάθος γνώση των αντίστοιχων κεφαλαίων της φυσικής. Μια ανασκόπηση των βασικών νόμων γίνεται στα κεφάλαια όπου αυτό είναι απαραίτητο.
Το βιβλίο αυτό μπορεί να χρησιμοποιηθεί είτε ως εγχειρίδιο αναφοράς είτε ως κύριο σύγγραμμα εξαμηνιαίου μαθήματος. Στη δεύτερη περίπτωση υπάρχουν διάφοροι τρόποι διδασκαλίας, κάποιοι εκ των οποίων ενδεικτικά παρουσιάζονται παρακάτω. Γενικά, μπορούμε να χωρίσουμε τα κεφάλαια του βιβλίου σε δύο μέρη:
Μέρος Α – Θεμελιώδεις έννοιες:
Μέρος Β – Προχωρημένα κεφάλαια:
Ένα εξαμηνιαίο μάθημα Γραφικών με έμφαση στη θεωρία θα μπορούσε να αποτελείται από τα κεφάλαια του Μέρους Α. Ένα μάθημα Γραφικών βασισμένο σε πρακτικά παραδείγματα και εφαρμογές με εργαστηριακό σκέλος θα μπορούσε να ακολουθήσει τα Κεφάλαια 1, 3, 4, 5, 6, 7, 8. Τέλος, ένα πλήρες εξαμηνιαίο μάθημα Γραφικών και Εικονικής Πραγματικότητας με σημαντικό θεωρητικό και εργαστηριακό σκέλος θα μπορούσε να ακολουθήσει όλα τα κεφάλαια του βιβλίου δίνοντας σαφώς έμφαση στα κεφάλαια 3, 4, 6, 7, 8, 10.
Ακόμα αξίζει να αναφερθεί μια στρατηγική εκμάθησης που έχει αποδειχθεί ιδιαίτερα αποτελεσματική στην πράξη από τους συγγραφείς. Ως στοιχείο εκμάθησης και ταυτόχρονα στοιχείο εξέτασης μπορεί να χρησιμοποιηθούν ιδιαίτερα απαιτητικές εργασίες. Ανάλογα με τη δυσκολία τους μπορεί ο διδάσκων να επιλέξει να έχουν οι εργασίες συμμετοχή στον τελικό βαθμό ή ακόμα και να απαλλάσσεται ο φοιτητής από τη γραπτή εξέταση. Αυτή η υποκατηγορία των απαλλακτικών εργασιών που πραγματεύονται θέματα αιχμής, έχει δείξει ότι:
Η πράξη έχει δείξει ότι η πλειοψηφία των φοιτητών που επιλέγουν ένα μάθημα Γραφικών και Εικονικής Πραγματικότητας στον κύκλο σπουδών τους έχουν ισχυρό κίνητρο και ενδιαφέρον από μόνοι τους, οπότε κάποιες από τις παρακάτω παροτρύνσεις, ίσως, να τις θεωρήσουν αυτονόητες.
Όπως και σε κάθε θεωρητικό μάθημα με πρακτικές εφαρμογές η αρχή της εις βάθος γνώσης είναι η αμφισβήτηση! Ειδικά στα Γραφικά όπου επιχειρείται πολλές φορές προσέγγιση φυσικών νόμων με αλγορίθμους και μοντέλα τα οποία εμπεριέχουν σφάλματα είναι πολύ σημαντικό να μαθαίνουμε γιατί μία ακριβής αναπαράσταση δεν είναι αποδεκτή (συνήθως, η απάντηση είναι η υπολογιστική πολυπλοκότητα) και γιατί ένα προσεγγιστικό μοντέλο με εγγενή σφάλματα είναι αποδεκτό! Μη διστάζετε να αμφισβητείτε ό,τι ακούτε και διαβάζετε, διότι οι απαντήσεις στις ερωτήσεις σας είναι αυτό που θα σας μείνει.
Πολλές φορές δε θα μπορείτε να απευθύνετε τις ερωτήσεις σας στο διδάσκοντα για πρακτικούς λόγους. Η αναζήτηση πηγών από τη βιβλιογραφία είναι ένα πολύ χρήσιμο εργαλείο για την εις βάθος εκμάθηση των εννοιών που παρουσιάζονται. Μπορείτε να βρείτε αξιόλογες εργασίες σε μια σειρά συνεδρίων, όπως το Siggraph και το Eurographics. Πολύ γνωστά περιοδικά στην περιοχή είναι το ACM Transactions on Graphics, IEEE Transactions on Visualization and Computer Graphics και το Eurographics Computer Graphics Forum.
Πέρα από την εκμάθηση θεωρητικών εννοιών, ένα πλήρες μάθημα Γραφικών και Εικονικής Πραγματικότητας πρέπει να συνοδεύεται από πρακτικό-εργαστηριακό σκέλος. Ακόμα και αν δε σας δίνεται αυτή η δυνατότητα στα πλαίσια ενός μαθήματος, προσπαθήστε να χρησιμοποιήσετε εργαλεία ανοιχτού κώδικα που είναι διαθέσιμα, για να μπορέσετε να υλοποιήσετε και να δείτε πρακτικά παραδείγματα των θεωρητικών εννοιών. Ενδεικτικά παραδείγματα βιβλιοθηκών που μπορείτε να χρησιμοποιήσετε είναι η OGRE και το VTK.
Τα Γραφικά (Computer Graphics) είναι η επιστήμη που ασχολείται με όλα τα ζητήματα που σχετίζονται με την οπτική επικοινωνία ανθρώπου και μηχανής. Συνήθως, η επικοινωνία αυτή περιορίζεται στη σύνθεση εικόνων μέσω ενός υπολογιστή τις οποίες παρατηρεί ένας χρήστης. Δεν είναι λίγες όμως και οι εφαρμογές κατά τις οποίες και ο υπολογιστής «παρακολουθεί» και αναγνωρίζει τις κινήσεις του χρήστη.
Η Εικονική Πραγματικότητα είναι η επιστήμη που έχει ως στόχο την ανάπτυξη κατάλληλων συσκευών και συστημάτων τα οποία έχουν ως απώτερο στόχο την πλήρη αποκοπή ενός χρήστη από το πραγματικό περιβάλλον και την εμβύθισή του (immersion) σε ένα εικονικό περιβάλλον. Για να το επιτύχει αυτό ένα σύστημα εικονικής πραγματικότητας πρέπει να αποκόψει κάθε πληροφορία που προέρχεται από τον πραγματικό κόσμο από τα αισθητήρια του χρήστη και να την αντικαταστήσει με εικονική. Το πρώτο και σημαντικότερο κανάλι αλληλεπίδρασης το οποίο χρησιμοποιείται στην εικονική πραγματικότητα είναι η όραση και ακολουθούν η ακοή και η αφή, ενώ πρόσφατα έχουν αναπτυχθεί και συστήματα για την παραγωγή συνθετικών ερεθισμάτων όσφρησης και γεύσης. Όσον αφορά την όραση, τα τελευταία χρόνια οι όροι Γραφικά και Εικονική Πραγματικότητα έχουν γίνει ταυτόσημοι, οπότε όλες οι διαδικασίες που θα αναλυθούν στα επόμενα κεφάλαια αφορούν και τα συστήματα Γραφικών εν γένει, αλλά και τα συστήματα Εικονικής Πραγματικότητας. Κάποιες ιδιαιτερότητες των τελευταίων θα αναλυθούν σε ξεχωριστό κεφάλαιο.
Μια από τις πιο ενδιαφέρουσες σχέσεις είναι αυτή της επιστημονικής περιοχής των Γραφικών (Computer Graphics) και της Υπολογιστικής Όρασης (Computer Vision). Όπως φαίνεται και στην Εικόνα 1.1α σε ένα σύστημα γραφικών είναι γνωστά όλα τα αντικείμενα και οι παράμετροι του τρισδιάστατου (συνήθως κόσμου). Αυτό που ζητείται είναι η απεικόνισή τους σε ένα επίπεδο προβολής δύο διαστάσεων το οποίο αναπαριστά και το «παράθυρο» του χρήστη προς τον εικονικό κόσμο. Αντίθετα στην Υπολογιστική Όραση Εικόνα 1.1β αυτό που δίνεται είναι μία εικόνα ή μία ακολουθία εικόνων δύο διαστάσεων από την οποία ζητείται ο υπολογισμός δεδομένων και χαρακτηριστικών των αντικειμένων και του κόσμου τριών διαστάσεων όπως είναι το βάθος, η γεωμετρία των αντικειμένων, η κίνησή τους, κ.ά.
Για το λόγο αυτό οι θεμελιώδεις έννοιες, όπως οι μετασχηματισμοί, οι προβολές (Κεφάλαιο 3) αλλά και οι χρωματικές αναπαραστάσεις (Κεφάλαιο 5), είναι κοινές και στις δύο αυτές περιοχές οι οποίες διαφοροποιούνται στον τρόπο με τον οποίο κάνουν χρήση των μαθηματικών αυτών εργαλείων.
Ας δούμε, όμως, τώρα ένα παράδειγμα ενός προβλήματος Γραφικών και πώς εμπλέκονται σε αυτό οι έννοιες που θα συναντήσουμε σε κάθε κεφάλαιο του παρόντος βιβλίου. Η σκηνή μας είναι ένα δωμάτιο, στη μέση του οποίου βρίσκεται ένα τραπέζι. Πάνω στο τραπέζι βρίσκεται μια τσαγιέρα, ενώ στο δωμάτιο περιφέρεται ένας εικονικός χαρακτήρας. Ακριβώς πάνω από τραπέζι υπάρχει μια λάμπα, η οποία φωτίζει τη σκηνή. Έστω τώρα τα εξής υπολογιστικά προβλήματα τα οποία πρέπει να αντιμετωπίσουμε:
Ο όρος σωλήνωση γραφικών (computer graphics pipeline) χρησιμοποιείται για να περιγράψει τον τρόπο με τον οποίο γίνεται η επεξεργασία των δεδομένων, προκειμένου να σχεδιαστεί μία σκηνή. Στην πιο αφηρημένη μορφή, ένα σύστημα γραφικών μπορεί να θεωρηθεί ως ένα «μαύρο κουτί», το οποίο δέχεται ως είσοδο κάποια δεδομένα και παράγει στην έξοδό του μια εικόνα. Πρακτικά, στα συστήματα γραφικών όλα τα στοιχειώδη αντικείμενα μιας σκηνής υπόκεινται σε επεξεργασία ακολουθιακά από διάφορα υποσυστήματα. Ένας από τους λόγους για τους οποίους χρησιμοποιείται μια τέτοιου τύπου αρχιτεκτονική είναι η παράλληλη λειτουργία όλων των υποσυστημάτων. Έτσι, όταν ένα υποσύστημα ολοκληρώσει την επεξεργασία ενός στοιχειώδους αντικειμένου προωθεί το αποτέλεσμα στο επόμενο υποσύστημα, ενώ ταυτόχρονα ξεκινά την επεξεργασία του επόμενου στοιχειώδους αντικειμένου.
Ο όρος σωλήνωση γραφικών (computer graphics pipeline) χρησιμοποιείται για να περιγράψει τον τρόπο με τον οποίο γίνεται η επεξεργασία των δεδομένων, προκειμένου να σχεδιαστεί μία σκηνή. Στην πιο αφηρημένη μορφή, ένα σύστημα γραφικών μπορεί να θεωρηθεί ως ένα «μαύρο κουτί», το οποίο δέχεται ως είσοδο κάποια δεδομένα και παράγει στην έξοδό του μια εικόνα. Πρακτικά, στα συστήματα γραφικών όλα τα στοιχειώδη αντικείμενα μιας σκηνής υπόκεινται σε επεξεργασία ακολουθιακά από διάφορα υποσυστήματα. Ένας από τους λόγους για τους οποίους χρησιμοποιείται μια τέτοιου τύπου αρχιτεκτονική είναι η παράλληλη λειτουργία όλων των υποσυστημάτων. Έτσι, όταν ένα υποσύστημα ολοκληρώσει την επεξεργασία ενός στοιχειώδους αντικειμένου προωθεί το αποτέλεσμα στο επόμενο υποσύστημα, ενώ ταυτόχρονα ξεκινά την επεξεργασία του επόμενου στοιχειώδους αντικειμένου.
Στην Εικόνα 1.2 απεικονίζεται ένα παράδειγμα σωλήνωσης γραφικών. Τα πολλών μορφών δεδομένα που απαιτούνται, χρησιμοποιούνται σε διάφορες φάσεις της επεξεργασίας. Ένα γεωμετρικό αντικείμενο μπορεί να θεωρηθεί ότι διασχίζει όλες τις διαδικασίες της σωλήνωσης γραφικών έως ότου προβληθεί σε μια συσκευή απεικόνισης. Όλα τα δεδομένα και οι διαδικασίες της σωλήνωσης γραφικών θα αναλυθούν λεπτομερώς στο παρόν σύγγραμμα. Στη συνέχεια περιγράφονται συνοπτικά και ενδεικτικά τα κυριότερα χαρακτηριστικά και οι λειτουργίες τους.
Δεδομένα
Η κυριότερη, ίσως, μορφή δεδομένων σε ένα σύστημα γραφικών είναι το γεωμετρικό αντικείμενο. Ένα αντικείμενο αποτελείται συνήθως από κορυφές οι οποίες συνδέονται μεταξύ τους σχηματίζοντας τρίγωνα. Υπάρχουν και άλλες εναλλακτικές μορφές αναπαράστασης αντικειμένων, όπως θα δούμε σε επόμενο κεφάλαιο. Πέρα, όμως, από τη γεωμετρική αναπαράσταση, ένα αντικείμενο, συνήθως, συνοδεύεται από χάρτες υφής, οι οποίοι περιγράφουν την κατανομή του χρώματος πάνω στην επιφάνεια του αντικειμένου και από πληροφορία σχετικά με το είδος του υλικού, η οποία έχει συχνά να κάνει με την ανακλαστικότητα του αντικειμένου. Πέρα από τα αντικείμενα αυτά καθαυτά, απαραίτητη πληροφορία για ένα σύστημα γραφικών είναι και οι πηγές φωτός της σκηνής αλλά και η θέση και ο προσανατολισμός του παρατηρητή.
Γεωμετρικοί μετασχηματισμοί
Τα γεωμετρικά μοντέλα εν γένει μοντελοποιούνται σε ένα σύστημα συντεταγμένων το οποίο να διευκολύνει τους υπολογισμούς. Το σύστημα συντεταγμένων αυτό ονομάζεται τοπικό σύστημα συντεταγμένων. Για παράδειγμα το τοπικό σύστημα συντεταγμένων μιας σφαίρας είναι κεντραρισμένο στο κέντρο της και οι τρεις ορθογώνιοι άξονες επιλέγονται τυχαία. Για την περίπτωση ενός κύβου, συνήθως, επιλέγεται ως αρχή των αξόνων το κέντρο του (κέντρο βάρους) και οι άξονες ευθυγραμμίζονται με τις πλευρές του.
Στη συνέχεια το μοντέλο τοποθετείται στο σύστημα συντεταγμένων κόσμου. Στην πράξη αυτό που γίνεται είναι να οριστεί ένας γεωμετρικός μετασχηματισμός που να μεταφέρει το τοπικό σύστημα συντεταγμένων στη συγκεκριμένη θέση του κόσμου (μεταφορά) και να το προσανατολίζει επιθυμητά (περιστροφή).
Το παραπάνω είναι ένα παράδειγμα γεωμετρικού μετασχηματισμού τριών διαστάσεων. Η δουλειά, όμως, των μετασχηματισμών δεν τελειώνει εδώ. Όλα τα αντικείμενα που περιγράφονται πλέον στο σύστημα συντεταγμένων κόσμου πρέπει να μετασχηματιστούν ως προς το σύστημα συντεταγμένων του παρατηρητή, κάτι το οποίο εμπλέκει ένα νέο 3Δ γεωμετρικό μετασχηματισμό όμοιο με το μετασχηματισμό του τοπικού συστήματος συντεταγμένων σε σύστημα συντεταγμένων κόσμου (το σύστημα συντεταγμένων παρατηρητή μπορεί να θεωρηθεί ως ένα τοπικό σύστημα συντεταγμένων για το «αντικείμενο» παρατηρητής). Στη συνέχεια πρέπει όλη η τρισδιάστατη πληροφορία των αντικειμένων να προβληθεί πάνω στο επίπεδο προβολής (viewport), το οποίο στη συνέχεια θα «αντιγράψουμε» στην οθόνη μας. Οι μετασχηματισμοί αυτοί ονομάζονται μετασχηματισμοί προβολής. Οι μετασχηματισμοί έχουν θεμελιώδη σημασία στα Γραφικά, διότι συμμετέχουν σχεδόν σε όλες τις διαδικασίες ενός Συστήματος Γραφικών, από τη σχεδίαση, έως την υφή και την απόδοση κίνησης.
Χρώμα - Απεικόνιση υφής
Η γεωμετρική αναπαράσταση ενός αντικειμένου δεν είναι στην πλειονότητα των περιπτώσεων τίποτα παραπάνω από ένα σύνολο σημείων, τα οποία είναι κατάλληλα συνδεδεμένα μεταξύ τους, ώστε να σχηματίζουν τρίγωνα. Άρα ως δεδομένα έχουμε: 1. Σημεία και 2. Τρίγωνα. Εάν θέλουμε να χρωματίσουμε τα αντικείμενά μας, το μόνο που μπορούμε αρχικά να κάνουμε είναι να ορίσουμε ένα χρώμα για κάθε τρίγωνο του αντικειμένου. Αυτό είναι αρκετά περιοριστικό, διότι δε μας δίνει τη δυνατότητα να «ζωγραφίσουμε» την επιφάνεια ενός τριγώνου κατά το δοκούν. Η απεικόνιση υφής έχει ως στόχο να λύσει το πρόβλημα αυτό. Έχοντας ως είσοδο μια εικόνα, ορίζεται ένας νέος μετασχηματισμός ο οποίος προβάλει τις κορυφές έστω ενός τριγώνου πάνω στην εικόνα αυτή. Στη συνέχεια με μια διαδικασία που ονομάζεται απεικόνιση υφής, «κόβουμε» το τρίγωνο της εικόνας που σχηματίζεται από τα τρία αυτά σημεία και το χρησιμοποιούμε για να χρωματίσουμε το αντίστοιχο τρίγωνο του 3Δ αντικειμένου. Έτσι με αυτόν τον τρόπο μπορούμε να αποδώσουμε διάφορα πρότυπα και μοτίβα χρωμάτων πάνω στο αντικείμενό μας.
Φωτισμός
Έστω τώρα ότι έχουμε τη γεωμετρική αναπαράσταση ενός αντικειμένου μαζί με τους εμπλεκόμενους μετασχηματισμούς, πάνω στο οποίο έχει εφαρμοστεί απεικόνιση υφής. Είναι σαφές και προφανές ότι ανάλογα με το φωτισμό της σκηνής το είδωλο του αντικειμένου πάνω στο επίπεδο προβολής θα είναι διαφορετικό. Πώς, όμως, μπορεί να κωδικοποιηθεί κάτι τέτοιο;
Η αρχική μας υπόθεση είναι ότι τα αντικείμενα αντανακλούν, ή διαθλούν, ή απορροφούν το φως, είτε συνδιάζουν τα παραπάνω σε κάποιο ποσοστό το καθένα. Ακόμα ο αέρας ούτε αντανακλά (σκέδαση) ούτε απορροφά φως. Στη συνέχεια καθορίζεται ο τρόπος με τον οποίο αντανακλά μια επιφάνεια το φως. Πιο συγκεκριμένα το φως μπορεί να αντανακλάται μόνο σε μια κατεύθυνση (καθρέφτης) είτε να διαχέεται προς όλες τις κατευθύνσεις (ματ επιφάνειες). Όλες οι παραπάνω παράμετροι κωδικοποιούνται στο μοντέλο φωτισμού Phong, το οποίο θα εξετάσουμε διεξοδικά στο αντίστοιχο κεφάλαιο. Παρά το γεγονός, όμως, ότι το μοντέλο Phong χρησιμοποιείται ευρύτατα, δεν παύει να είναι μια χαμηλού υπολογιστικού κόστους προσέγγιση του τρόπου με τον οποίο αλληλεπιδρά το φως με την ύλη.
Σχεδιασμός
Το τελευταίο στοιχείο της σωλήνωσης γραφικών μπορεί να θεωρηθεί ο σχεδιασμός των γεωμετρικών στοιχείων και καμπυλών μιας σκηνής. Εδώ το σημαντικότερο πρόβλημα είναι το πώς μπορεί κανείς να απεικονίσει συνεχείς καμπύλες (ευθύγραμμα τμήματα, τόξα, τρίγωνα) σε ένα πλέγμα πεπερασμένου αριθμού σημείων (εικονοστοιχεία). Για την αντιμετώπιση των προβλημάτων που συνεπάγεται η διακριτοποίηση αυτή χρησιμοποιούνται διάφορες τεχνικές όπως η αντι-ταύτιση (anti-aliasing).
Συσκευές παρατήρησης
Παραδοσιακά οι συσκευές παρατήρησης σε ένα σύστημα γραφικών θεωρούνται οι προσωπικοί υπολογιστές και κατ’ επέκταση οι οθόνες τους. Ενώ η τεχνολογία κατασκευής οθονών εξελίσσεται ραγδαία παραμένει αναλλοίωτος έως σήμερα ο τρόπος με τον οποίο γίνεται η απεικόνιση της πληροφορίας με χρήση εικονοστοιχείων. Πιο συγκεκριμένα, η επιφάνεια μιας οθόνης χωρίζεται σε ένα πλέγμα από εικονοστοιχεία (pixels) τα οποία μπορούν να πάρουν ένα συγκεκριμένο χρώμα. Αυτή η διακριτή μορφή αναπαράστασης είναι πολύ σημαντική υπόθεση για το σχεδιασμό αντικειμένων, όπως θα δούμε και στο Κεφάλαιο 2.
Με τη ραγδαία, όμως, αύξηση της ισχύος των φορητών υπολογιστικών μηχανών, ως συσκευές παρατήρησης συστημάτων γραφικών λογίζονται πλέον και όλες οι φορητές συσκευές συμπεριλαμβανομένων των κινητών τηλεφώνων. Ακόμα, πολύπλοκες συσκευές παρατήρησης εικονικής και επαυξημένης πραγματικότητας που τη δεκαετία του 2000 είχαν απαγορευτικό κόστος, πλέον είναι προσιτές στο ευρύ κοινό και παρουσιάζουν ιδιαίτερο ενδιαφέρον, όπως θα δούμε και στο Κεφάλαιο 9.
Τα συστήματα γραφικών έχουν εφαρμογή σε πάρα πολλές περιοχές της επιστήμης αλλά και της καθημερινότητάς μας. Στη συνέχεια παρουσιάζονται ενδεικτικά κάποιες από τις περιοχές αυτές.
Μια από τις κύριες και άμεσες εφαρμογές των Συστημάτων Γραφικών είναι στην περιοχή της διασκέδασης. Στην περιοχή αυτή την πλειοψηφία κατέχουν τα 3Δ αλληλεπιδραστικά παιχνίδια (Εικόνα 1.3) τα οποία αποτελούν ένα πολύ μεγάλο κομμάτι της παγκόσμιας οικονομίας, ενώ παρουσιάζουν και ραγδαία αύξηση στον 21ο αιώνα.
Τα τελευταία χρόνια παρουσιάζει ιδιαίτερη ανάπτυξη στον τομέα της ιατρικής η περιοχή της απεικόνισης (imaging), η οποία έχει ως στόχο τη μεταφορά πληροφορίας του οργανισμού ενός ασθενούς σε κάποιο εξωτερικό μέσο (π.χ. πλάκα ακτινογραφίας) με μη επεμβατικό τρόπο. Η περιοχή αυτή εμπλέκει τεχνολογίες υπολογισμού μιας εικόνας (εκπομπή ηλεκτρονίων, ποζιτρονίων, μαγνητικός συντονισμός, κ.ά.) αλλά και τεχνολογίες γραφικών και απεικόνισης της πληροφορίας αυτής με τέτοιο τρόπο, ώστε να είναι χρήσιμη στο θεράποντα ιατρό (Εικόνα 1.4).
Πέρα από τις παραδοσιακές μεθόδους απεικόνισης σε πλάκες και αντίστοιχα συμβατικά μέσα, τα τελευταία χρόνια η πληροφορία μπορεί να χρησιμοποιηθεί ώστε να ανακατασκευαστεί ένα 3Δ αντίγραφο του εσωτερικού του οργανισμού ενός ασθενούς και το οποίο μπορεί στη συνέχεια να εξετάσει ο ιατρός.
Μια ιδιαίτερα σημαντική εφαρμογή των συστημάτων γραφικών είναι η απεικόνιση πληροφορίας και γενικότερα οπτικοποίηση δεδομένων (Εικόνα 1.5). Ιδιαίτερα η συνεργασία των γραφικών με τη στατιστική και την οπτικοποίηση δεδομένων ακολούθησε μια ιστορική πορεία αλληλεξάρτησης του ενός από τα άλλα [Friendly, 2006)]. Εδώ, σε αντίθεση με την περίπτωση της ιατρικής απεικόνισης όπου συνηθίζεται η πληροφορία που απεικονίζεται να αφορά γεωμετρικές οντότητες (π.χ. πνευμόνια, σκελετός), η απεικόνιση γίνεται, συνήθως, σε αφηρημένους χώρους οι οποίοι επιλέγονται ανάλογα με την εφαρμογή.