introduction to opengl
Post on 17-Jan-2016
35 Views
Preview:
DESCRIPTION
TRANSCRIPT
168 471 Computer Graphics, KKU. Lecture 10
1
Introduction to OpenGL
168 471 Computer Graphics, KKU. Lecture 10
2
168 471 Computer Graphics, KKU. Lecture 10
3
168 471 Computer Graphics, KKU. Lecture 10
4
168 471 Computer Graphics, KKU. Lecture 10
5
OpenGL/GLU/GLUT/GLUI
• OpenGL v1.4 (latest) is the “core” library that is platform independent
• GLUT v3.6 or v3.7 (beta) is an auxiliary library that handles window creation, OS system calls (mouse buttons, movement, keyboard, etc), callbacks.
• GLU is an auxiliary library that handles a variety of graphics accessory functions
• GLUI v1.0 or v2.0 (beta)is a GUI manager written by Paul Rademacher (rademach@cs.unc.edu).
168 471 Computer Graphics, KKU. Lecture 10
6
168 471 Computer Graphics, KKU. Lecture 10
7
168 471 Computer Graphics, KKU. Lecture 10
8
GLUT 3D Primitives
168 471 Computer Graphics, KKU. Lecture 10
9
168 471 Computer Graphics, KKU. Lecture 10
10
168 471 Computer Graphics, KKU. Lecture 10
11
168 471 Computer Graphics, KKU. Lecture 10
12
168 471 Computer Graphics, KKU. Lecture 10
13
168 471 Computer Graphics, KKU. Lecture 10
14
168 471 Computer Graphics, KKU. Lecture 10
15
Double Buffer
• Graphics card scans out the image on the frame buffer. What rate is this done at?
• So what is the problem with this?• You might be in the middle of drawing a frame
when it decides to scan out the image• What is a solution?• Have two separate frame buffers, one that
the card scans out of, and the other you draw into. When you are done drawing a frame, you switch their roles
• What are the memory requirements?
168 471 Computer Graphics, KKU. Lecture 10
16
Double Buffering
...
glVertex3f(0.1,0.1,0.1)
glutSwapBuffers();
...
168 471 Computer Graphics, KKU. Lecture 10
17
Double Buffering...
glVertex3f(0.1,0.1,0.1)
glutSwapBuffers();
...
168 471 Computer Graphics, KKU. Lecture 10
18
168 471 Computer Graphics, KKU. Lecture 10
19
168 471 Computer Graphics, KKU. Lecture 10
20
168 471 Computer Graphics, KKU. Lecture 10
21
168 471 Computer Graphics, KKU. Lecture 10
22
168 471 Computer Graphics, KKU. Lecture 10
23
top related