Zeno
03-12-2003, 12:48 PM
Hi all. I believe I found a pretty serious Radeon 9700 bug but I wanted to post it here first to make sure it wasn't something I was doing wrong.
I'm in the middle of making a fairly large engine hardware-agnostic. When testing on the 9700, I would get a severe lockup (first the app would freeze, then my cursor and windows would freeze a few seconds later) when looking in certain directions. After much hair-pulling and many reboots, I found that the cause of the problem was calling glDrawElements() when I had a DXTC3 compressed texture of size 2048x512 with mipmaps bound to texture unit 0. Resizing this texture to 1024x256 (still DXTC3 with mipmaps) solved the problem.
At the point I did this test, I had made sure that the engine was falling back to vanilla OpenGL....no vertex programs or pixel shaders were being used. Multitexture was the only enabled extension. The Geforce4 Ti4600 ran just fine on the exact same codepath with the exact same data (2048 texture).
Querying GL_MAX_TEXTURE_SIZE on the 9700 returns a size of 2048, so it seems to me that the texture was within the allowed size. Is that size different for compressed textures or for textures with mipmaps? If so, what do I need to call to find that max texture size?
Lastly, some system info: Windows 2000 Pro, Radeon 9700 with Cat 3.1, Pentium IV 1.7 Ghz, 512 Mb RAM.
Anyway, it would be great if this bug could be fixed, or at least not crash windows http://www.opengl.org/discussion_boards/ubb/frown.gif.
Thanks,
Zeno
I'm in the middle of making a fairly large engine hardware-agnostic. When testing on the 9700, I would get a severe lockup (first the app would freeze, then my cursor and windows would freeze a few seconds later) when looking in certain directions. After much hair-pulling and many reboots, I found that the cause of the problem was calling glDrawElements() when I had a DXTC3 compressed texture of size 2048x512 with mipmaps bound to texture unit 0. Resizing this texture to 1024x256 (still DXTC3 with mipmaps) solved the problem.
At the point I did this test, I had made sure that the engine was falling back to vanilla OpenGL....no vertex programs or pixel shaders were being used. Multitexture was the only enabled extension. The Geforce4 Ti4600 ran just fine on the exact same codepath with the exact same data (2048 texture).
Querying GL_MAX_TEXTURE_SIZE on the 9700 returns a size of 2048, so it seems to me that the texture was within the allowed size. Is that size different for compressed textures or for textures with mipmaps? If so, what do I need to call to find that max texture size?
Lastly, some system info: Windows 2000 Pro, Radeon 9700 with Cat 3.1, Pentium IV 1.7 Ghz, 512 Mb RAM.
Anyway, it would be great if this bug could be fixed, or at least not crash windows http://www.opengl.org/discussion_boards/ubb/frown.gif.
Thanks,
Zeno