Display lists improve performance
because ________________________________________________
You can use them to store OpenGL commands for later use. Calculations performed only once.
A display list is precompiled after it is created. Geometric calculations are made only once.
To optimize performance, an OpenGl
display list is a _________________ of commands, rather than a
dynamic database. cache
The text lists some most likely
possibilities for optimization using display lists. List 3 of these.
_________________________________________________________________________________
_________________________________________________________________________________
_________________________________________________________________________________
(1) matrix operations,
(2) raster bitmaps and images,
(3) lights, material properties, and lighting models
(4) polygon stipple patterns
There are some disadvantages to using
display lists. Describe 2 of these disadvantages.
_________________________________________________________________________________
_________________________________________________________________________________
(1) Very small lists may not perform well since there is some overhead when executing a list.
(2) The immutability of the contents of a display list. To optimize performance, an OpenGL display list cannot
be changed and its contents cannot be read.
(3)If the application needs to maintain data separately from the display list (for example, for continued data
processing), then a lot of additional memory may be required.
The command to begin a display list
glNewList()
The command to end a display list is
glEndList()
The command to invoke a display list
is glCallList()
You can have multiple display lists in
a program. They are identified by:
an integer index.
glGenLists (range)
What is the purpose of this function?
To allocate a number of contiguous, previously unallocated display list indices.
What does it return?
The index that marks the beginning of a contiguous block of empty list indices.
What is the purpose of the range parameter?
It specifies the number of indices requested.
A hierarchical display list is useful
for an object made of components, especially if some of the
components are used multiple times. How do you create a hierarchical display list?
By calling glCallList() between a glNewList() and glEndList() pair.
What is the purpose of the function
glIsList(list)?
It returns a boolean – true if list is already used for a display list and false otherwise.
Describe the procedure explained in
the text for executing several display lists in succession.
Place the display list indices in an array and call glCallLists()
The text discusses how display lists
can be used to manage state variables. What is a state variable?
A variable that stores the current setting of things such as RGB color, and those associated with lighting,
texture, etc.
Indicate whether the following statements are true or false by placing a check ( ü) in the appropriate column.
|
Statement |
True |
False |
|
Once a display list is created, it can be modified. |
|
ü |
|
A display list can contain only OpenGL commands. |
ü |
|
|
When a display list is compiled, only the values for expressions are stored in the list. |
ü |
|
|
Executing display lists is no slower than executing the commands contained within them individually. |
ü |
|
|
You are not guaranteed that your OpenGL implementation optimizes display lists for any particular application. |
ü |
|