Hampel
03-18-2004, 05:02 AM
I upload a pre-compressed S3TC image into the texture memory by:
glCompressedTexImage2D(
GL_TEXTURE_2D, /* target */
0, /* mipmap level */
GL_COMPRESSED_RGBA_S3TC_DXT1_EXT, /* S3TC compression format */
imageSizeX, /* image size x */
imageSizeY, /* image size y */
0, /* border pixels */
bytes, /* image data size in bytes */
buffer /* image data */
);
The uploaded image is displayed correctly :-)
But the uploading time on ATI cards are very high (ATI 9800 XT, Catalyst 4.3, AGP: 4x, Fast write: on):
512x512: ~1 second
1024x1024: ~4 seconds!!!
2048x2048: ~16 seconds!!!
The timing is done by:
glFlush();
// get start time
glCompressedTexImage2D(...);
glBegin(GL_TRIANGLES);
glEnd();
// get end time
Without the glBegin()/glEnd() execution blocks at least at the next rendering of a primitive for the same duration!
On my NVidia GeForce4go equipped notebook the loading times are:
512x512: <0.05 seconds
1024x1024: <0.17 seconds
2048x2048: <0.65 seconds
Is this a known ATI driver bug?
Any suggestions to workaround this problem?
glCompressedTexImage2D(
GL_TEXTURE_2D, /* target */
0, /* mipmap level */
GL_COMPRESSED_RGBA_S3TC_DXT1_EXT, /* S3TC compression format */
imageSizeX, /* image size x */
imageSizeY, /* image size y */
0, /* border pixels */
bytes, /* image data size in bytes */
buffer /* image data */
);
The uploaded image is displayed correctly :-)
But the uploading time on ATI cards are very high (ATI 9800 XT, Catalyst 4.3, AGP: 4x, Fast write: on):
512x512: ~1 second
1024x1024: ~4 seconds!!!
2048x2048: ~16 seconds!!!
The timing is done by:
glFlush();
// get start time
glCompressedTexImage2D(...);
glBegin(GL_TRIANGLES);
glEnd();
// get end time
Without the glBegin()/glEnd() execution blocks at least at the next rendering of a primitive for the same duration!
On my NVidia GeForce4go equipped notebook the loading times are:
512x512: <0.05 seconds
1024x1024: <0.17 seconds
2048x2048: <0.65 seconds
Is this a known ATI driver bug?
Any suggestions to workaround this problem?