HP j6700 OpenGL Implementation Guide for HP-UX 11.x - Page 58

texture downloading performance, selection performance, GL_TEXTURE_GEN

Page 58 highlights

programming hints OpenGL performance hints glNormal3fv(&v2); glVertex3fv(&p5); glNormal3fv(&v2); glVertex3fv(&p6); ... glEnd(); The reason this is faster is the display list can optimize this type of primitive into a single, very efficient structure. The small cost of adding extra data is offset by this optimization. Performance is increased by maximizing the number of vertices per Begin/End pair. If your vertex data in memory is organized in a linear, rather than a random manner, performance is enhanced by taking advantage of vertex pre-fetch. It is most efficient to use 32-bit float data, which avoids the need to convert data. texture downloading performance This section includes some helpful hints for improving the performance of your program when downloading textures. • If you are downloading MIP maps, always begin with the base level (level 0) first. • If it is possible, you should use texture objects to store and bind textures. • If you are doing dynamic downloading of texture maps, you will get better performance by replacing the current texture with a texture of the same width, height, border size, and format. This should be done instead of deleting the old texture and creating a new one. selection performance To increase the performance of selection (glRenderMode GL_SELECTION) it is recommended that the following capabilities be disabled before entering the selection mode. GL_TEXTURE_* GL_TEXTURE_GEN_* GL_FOG GL_LIGHTING 56 Chapter 5

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62

programming hints
OpenGL performance hints
Chapter 5
56
glNormal3fv(&v2); glVertex3fv(&p5);
glNormal3fv(&v2); glVertex3fv(&p6);
...
glEnd();
The reason this is faster is the display list can optimize this type of
primitive into a single, very efficient structure. The small cost of adding
extra data is offset by this optimization.
Performance is increased by maximizing the number of vertices per
Begin/End pair. If your vertex data in memory is organized in a linear,
rather than a random manner, performance is enhanced by taking
advantage of vertex pre-fetch. It is most efficient to use 32-bit float data,
which avoids the need to convert data.
texture downloading performance
This section includes some helpful hints for improving the performance
of your program when downloading textures.
If you are downloading MIP maps, always begin with the base level
(level 0) first.
If it is possible, you should use texture objects to store and bind
textures.
If you are doing dynamic downloading of texture maps, you will get
better performance by replacing the current texture with a texture of
the same width, height, border size, and format. This should be done
instead of deleting the old texture and creating a new one.
selection performance
To increase the performance of selection (
glRenderMode GL_SELECTION
)
it is recommended that the following capabilities be disabled before
entering the selection mode.
GL_TEXTURE_*
GL_TEXTURE_GEN_*
GL_FOG
GL_LIGHTING