•
•
•
•
•
23
The Ultimate Windows NT Workstation Graphics Accelerator
Efficient Use of Multiple Textures
OpenGL applications that render primitives with multiple texture maps will
achieve much higher performance by not invoking the different textures in
immediate mode. There are two alternative options for efficient switching
between multiple textures.
The first and much preferred option is to use the OpenGL texture object
functionality. Texture objects are fully editable and may have their images and
parameters altered at any time (unlike the use of textures in display lists). Details
on texture object functionality is available in the OpenGL 1.1 specification.
The performance gain using this approach will benefit performance for the
ASUS AGP-V5200 board.
The second option is to define each texture (or array of mip map resolutions)
within a display list — with the limitation that only one texture is allowed per
display list. Switching between different textures is then achieved by referencing
the appropriate display list. Since display lists are not editable in OpenGL, the
OpenGL implementation is able to cache texture data defined within a display
list. In effect the display list identifier acts as a texture handle. This caching
cannot be performed when a texture is invoked in immediate mode because the
application in this case is expected to have changed the texture data since the
time it was previously referred.
Texture Memory Cache Management
Texture data is stored in the local buffer memory on the graphics card. The
memory available for textures is therefore constrained by the local buffer
memory available. It is also constrained by the amount of local buffer memory
already consumed, such as for the depth buffer and stencil buffer. This amount
varies according to the current display resolution in use, i.e., there is more
memory available for textures when the display resolution (and therefore the
size of the depth buffer, stencil buffer) is lowered.
On 3Dlabs OpenGL releases prior to version 1.1.14, if the condition is reached
where there is insufficient local buffer memory to load a new texture, then the
OpenGL texture download will not succeed and will set the error code
GL_OUT_OF_MEMORY
. Textured primitives that expect to use this texture will
not be rendered correctly. To improve on this behavior a scheme for swapping
OpenGL Texturing and Extensions
Содержание AGP-V5200
Страница 10: ... 10 ASUS AGP V5200 ...
Страница 30: ... 30 ASUS AGP V5200 Appendix A Declaration of Conformity ...
Страница 31: ... 31 The Ultimate Windows NT Workstation Graphics Accelerator ...
Страница 32: ... 32 ASUS AGP V5200 ...