Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

2 ο εργαστήριο 1. OpenGL Σύνταξη Εντολών Οι εντολές OpenGL χρησιμοποιούν το πρόθεμα gl και κεφαλαίο το πρώτο γράμμα κάθε λέξης. Οι OpenGL σταθερές αρχίζουν.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "2 ο εργαστήριο 1. OpenGL Σύνταξη Εντολών Οι εντολές OpenGL χρησιμοποιούν το πρόθεμα gl και κεφαλαίο το πρώτο γράμμα κάθε λέξης. Οι OpenGL σταθερές αρχίζουν."— Μεταγράφημα παρουσίασης:

1 2 ο εργαστήριο 1

2 OpenGL Σύνταξη Εντολών Οι εντολές OpenGL χρησιμοποιούν το πρόθεμα gl και κεφαλαίο το πρώτο γράμμα κάθε λέξης. Οι OpenGL σταθερές αρχίζουν με GL_, και χρησιμοποιούνται κεφαλαία η ‘_’ για το διαχωρισμό των λέξεων. 2 glVertex3f(…) OpenGL πρόθεμα εντολή πλήθος παραμέτρ. τύπος παραμέτρ.

3 Τύποι δεδομένων 3 OpenGL TypeInternal representationC-Language TypeSuffix GLbyte8-bit integersigned charb GLshort16-bit integershorts GLint, GLsizei32-bit integerint or longi GLfloat32-bit floatingfloatf GLflampfpointer GLfouble64-bit floatingdoubled GLclampdpointer Glubyte8-bit unsigned integerunsigned charub GLuboolean8-bit unsigned integerunsigned charub GLushort16-bit unsigned integerunsigned shortus GLuint, GLenum32-bit unsigned integerunsigned longui GLbitfield32-bit unsigned integer

4 Διαχείριση καταστάσεων Η OpenGL είναι μηχανή καταστάσεων. –Η αλλαγή μιας κατάστασης παραμένει μέχρι να ξανα-αλλαχθεί. –Η κάθε κατάσταση έχει μια δεδομένη τιμή. –Κάθε στιγμή μπορούμε να πάρουμε από το σύστημα την τρέχουσα τιμή. 4

5 Διαχείριση καταστάσεων –glEnable(GLenum), glDisable(GLenum) Ενεργοποίηση και απενεργοποίηση κάποιας κατάστασης. –glIsEnabled(GLenum) Ερώτηση αν η κατάσταση είναι ενεργοποιημένη –glGetBooleanv(), glGetIntegerv(), glGetFloatv(), glGetDoublev(), glGetPointerv() Ζητείται η τρέχουσα τιμή –OpenGL Programming Guide : Appendix B 5

6 Αναπαράσταση Χρώματος RGBA –4 κανάλια: Red, Green, Blue, and Alpha. –Κάθε κανάλι παίρνει τιμές 0.0 ~ 1.0 Τιμές εκτός των ορίων αποδίδονται στο 0.0 ή 1.0. Το Alpha χρησιμοποιείται στο συνδυασμό και τη διαφάνεια Π.x.glColor4f(0.0, 1.0, 0.0, 1.0); // Green glColor4f(1.0, 1.0, 1.0, 1.0); // White 6

7 Παράδειγμα #include void GL_display() { glClearColor(0.0f, 0.0f, 0.0f, 0.0f); glClear(GL_COLOR_BUFFER_BIT); glBegin(GL_POLYGON); glColor3f(1.0f, 1.0f, 1.0f); glVertex3f (-1.0, -1.0, 0.0); glColor3f(1.0f, 0.0f, 0.0f); glVertex3f (1.0, -1.0, 0.0); glColor3f(0.0f, 1.0f, 0.0f); glVertex3f (1.0, 1.0, 0.0); glColor3f(0.0f, 0.0f, 1.0f); glVertex3f (-1.0, 1.0, 0.0); glEnd(); glFlush(); } 7

8 Παράδειγμα void GL_reshape(GLsizei w, GLsizei h) { glViewport(0, 0, w, h); glMatrixMode(GL_PROJECTION); glLoadIdentity(); glOrtho(-2.0f, 2.0f, -2.0f, 2.0f, -2.0f, 2.0f); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); } void main(int argc, char** argv) { glutInit(&argc, argv); glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB); glutInitWindowSize (250, 250); glutInitWindowPosition (100, 100); glutCreateWindow("Drawing Sample"); glutDisplayFunc(GL_display); glutReshapeFunc(GL_reshape); glutMainLoop(); } 8

9 Παράδειγμα 9


Κατέβασμα ppt "2 ο εργαστήριο 1. OpenGL Σύνταξη Εντολών Οι εντολές OpenGL χρησιμοποιούν το πρόθεμα gl και κεφαλαίο το πρώτο γράμμα κάθε λέξης. Οι OpenGL σταθερές αρχίζουν."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google