background image

ματικό χρόνο.

4.4

Σύστημα απόδοσης γραφικών Rendering Pipeline

Η απόδοση γραφικών σε πραγματικό χρόνο αποτελεί τον πυρήνα λειτουργίας μιας μηχα-

νής παιχνιδιών. Το Rendering Pipeline περιγράφει τη διαδοχική επεξεργασία των δεδομένων

της σκηνής με σκοπό τη μετατροπή τους στο τελικό τους αποτελεσμα (pixel) στην οθόνη. Η

διαδικασία αυτή εκτελείται κυρίως στη μονάδα επεξεργασίας γραφικών (GPU) και ακολουθεί

ένα καθορισμένο σύνολο σταδίων, τα οποία είναι προγραμματιζόμενα μέσω shaders. Σε γενικό

επίπεδο, το pipeline απόδοσης ακολουθεί τα εξής στάδια:

1. Ορισμός γεωμετρίας (Vertices)

2. Μεταφορά δεδομένων στη GPU μέσω buffer objects

3. Vertex Processing (Vertex Shader)

4. Primitive Assembly & Rasterization

5. Fragment Processing (Fragment Shader)

6. Framebuffer Output

Στο στάδιο του vertex shader εφαρμόζονται οι μετασχηματισμοί θέσης (Model–View–

Projection), ενώ στο fragment shader υπολογίζεται το τελικό χρώμα κάθε pixel, λαμβάνοντας

υπόψη υλικά, υφές και φωτισμό.

Η μηχανή αξιοποιεί το προγραμματιζόμενο pipeline της OpenGL, επιτρέποντας πλήρη

έλεγχο των σταδίων μέσω custom shader προγραμμάτων. Σχήμα 4.3.

Σχήμα 4.3: Rendering pipeline

Στην παρούσα μηχανή, το σύστημα απόδοσης σχεδιάστηκε με γνώμονα:

28