As one moves from simple flat shading to more complex shading and textures, the performance drops. A test was performed on the GLoria II (Quadro) and GVX1 – AGP with tri-linear textures and one infinite light. The GLperf script fragment was:
TriangleStripTest {
(UserString printf("Triangle Strip (%s, 64x64 RGB trilinear modulated texture, smooth, 1 inf light)", ExecuteMode, Size))
(ExecuteMode Immediate )
(DepthTest GL_LEQUAL)
(ObjsPerBeginEnd 4)
(Size from 1 to 512 step 100%)
(NormalData PerVertex)
(TexTarget GL_TEXTURE_2D)
(TexWidth 64)
(TexHeight 64)
(TexComps 3)
(TexLOD 3)
(TexMagFilter GL_LINEAR)
(TexMinFilter GL_LINEAR_MIPMAP_LINEAR)
(TexFunc GL_MODULATE)
(NormalData PerVertex)
(TexData PerVertex)
(ShadeModel GL_SMOOTH)
(InfiniteLights 1)}
The results are compared to the flat shaded performance in the following chart:
The peak triangle rates drop from about 9 million per second to a little over 3 million per second for the GLoria II! The impact on the GVX1 performance was about a 40% reduction.
What performance does one need? Let’s suppose we wanted to spin smoothly (at 30 fps) a large flat shaded MCAD model (500,000 polys at 30 pixels per poly); this would require performance of 15 million polys per second at 30 pixels per triangle size. The best card tested ( GLoria II Quadro SDR ) offers only about 18% of what is needed, so we some way to go in order to get the performance needed for this class of problem.
0 Comments
View All Comments