Hi to everyone:
My video card is ati x1300.
I am calling glGetString(GL_EXTENSIONS) from Windows XP,report is
EXT_texture_rectangle,but not GL_texture_non_power_of_two
my code like this:
GLuint texid;
glGenTextures(1, &texid);
glBindTexture(GL_TEXTURE_RECTANGLE_ARB, texid);
glTexImage2D(GL_TEXTURE_RECTANGLE_ARB, 0, internal_format, width, height,
0, GL_RGBA, GL_UNSIGNED_BYTE, (void*)buf);
.....
glEnable(GL_TEXTURE_RECTANGLE_ARB);
glBindTexture(GL_TEXTURE_RECTANGLE_ARB, texid);
render with glDrawArrays and use no-normalize texcoord.
my code work ok on Nv Geforce310 card. but on x1300,same texture is
render ok and others is incorrect,it appears that it really isn't
supported.
Thanks!
GL_TEXTURE_RECTANGLE_ARB support on ati x1300?
EXT_texture_rectangle?
You should look for ARB_texture_rectangle since you are using GL_TEXTURE_RECTANGLE_ARB.
Are you saying that X1300 doesn't support GL_ARB_texture_non_power_of_two?
If the GL version is 2.0, then you can make NPOT textures but it won't be fast if you use mipmaps or anisotropic filtering or certain clamp modes like GL_CLAMP or GL_CLAMP_TO_BORDER, GL_CLAMP_MIRROR.
GL_ARB_texture_non_power_of_two is an indicator extension that the GPU supports true full blown NPOT.
I use to use limited NPOT on old Radeons like the 9500, 9700.
You should look for ARB_texture_rectangle since you are using GL_TEXTURE_RECTANGLE_ARB.
Are you saying that X1300 doesn't support GL_ARB_texture_non_power_of_two?
If the GL version is 2.0, then you can make NPOT textures but it won't be fast if you use mipmaps or anisotropic filtering or certain clamp modes like GL_CLAMP or GL_CLAMP_TO_BORDER, GL_CLAMP_MIRROR.
GL_ARB_texture_non_power_of_two is an indicator extension that the GPU supports true full blown NPOT.
I use to use limited NPOT on old Radeons like the 9500, 9700.
Thanks for V-man's reply
my card's gl extensions is EXT_texture_rectangle,but not ARB_texture_rectangle.
i googled a similar problem :
http://lists.apple.com/archives/mac-opengl/2007/jan/msg00153.html
i don't understand the difference between EXT_texture_rectangle and ARB_texture_rectangle.
Thanks
my card's gl extensions is EXT_texture_rectangle,but not ARB_texture_rectangle.
i googled a similar problem :
http://lists.apple.com/archives/mac-opengl/2007/jan/msg00153.html
i don't understand the difference between EXT_texture_rectangle and ARB_texture_rectangle.
Thanks
which parameter i use instead of GL_TEXTURE_RECTANGLE_ARB as texture target parameter of glTexImage2D?
int the glext.h,i found this define:
#ifndef GL_NV_texture_rectangle
#define GL_TEXTURE_RECTANGLE_NV 0x84F5
#define GL_TEXTURE_BINDING_RECTANGLE_NV 0x84F6
#define GL_PROXY_TEXTURE_RECTANGLE_NV 0x84F7
#define GL_MAX_RECTANGLE_TEXTURE_SIZE_NV 0x84F8
#endif
#ifndef GL_ARB_texture_rectangle
#define GL_TEXTURE_RECTANGLE_ARB 0x84F5
#define GL_TEXTURE_BINDING_RECTANGLE_ARB 0x84F6
#define GL_PROXY_TEXTURE_RECTANGLE_ARB 0x84F7
#define GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB 0x84F8
#endif
it seems not for EXT_texture_rectangle.what is GL_TEXTURE_RECTANGLE_EXT's value?
Thanks
int the glext.h,i found this define:
#ifndef GL_NV_texture_rectangle
#define GL_TEXTURE_RECTANGLE_NV 0x84F5
#define GL_TEXTURE_BINDING_RECTANGLE_NV 0x84F6
#define GL_PROXY_TEXTURE_RECTANGLE_NV 0x84F7
#define GL_MAX_RECTANGLE_TEXTURE_SIZE_NV 0x84F8
#endif
#ifndef GL_ARB_texture_rectangle
#define GL_TEXTURE_RECTANGLE_ARB 0x84F5
#define GL_TEXTURE_BINDING_RECTANGLE_ARB 0x84F6
#define GL_PROXY_TEXTURE_RECTANGLE_ARB 0x84F7
#define GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB 0x84F8
#endif
it seems not for EXT_texture_rectangle.what is GL_TEXTURE_RECTANGLE_EXT's value?
Thanks
Hmmm, it looks like they removed it from glext.h
Ok, use the ARB stuff because they have the same values. I remember :)
Ok, use the ARB stuff because they have the same values. I remember :)
hi V-man,i have resolved this problem.
if render by this code:
glEnable(GL_TEXTURE_RECTANGLE_ARB);
glBindTexture(GL_TEXTURE_RECTANGLE_ARB, texid1);
...render texture1
glEnable(GL_TEXTURE_RECTANGLE_ARB);
glBindTexture(GL_TEXTURE_RECTANGLE_ARB, texid2);
...render texture2
texture1 is render ok and txture2 is wrong.i insert "glBindTexture(GL_TEXTURE_RECTANGLE_ARB, 0)"like this:
glEnable(GL_TEXTURE_RECTANGLE_ARB);
glBindTexture(GL_TEXTURE_RECTANGLE_ARB, texid1);
...render texture1
glDisable(GL_TEXTURE_RECTANGLE_ARB);
glBindTexture(GL_TEXTURE_RECTANGLE_ARB, 0);
glEnable(GL_TEXTURE_RECTANGLE_ARB);
glBindTexture(GL_TEXTURE_RECTANGLE_ARB, texid2);
...render texture2
it's OK!
i think x1300 driver has some little bug.
Thinks for you reply!
if render by this code:
glEnable(GL_TEXTURE_RECTANGLE_ARB);
glBindTexture(GL_TEXTURE_RECTANGLE_ARB, texid1);
...render texture1
glEnable(GL_TEXTURE_RECTANGLE_ARB);
glBindTexture(GL_TEXTURE_RECTANGLE_ARB, texid2);
...render texture2
texture1 is render ok and txture2 is wrong.i insert "glBindTexture(GL_TEXTURE_RECTANGLE_ARB, 0)"like this:
glEnable(GL_TEXTURE_RECTANGLE_ARB);
glBindTexture(GL_TEXTURE_RECTANGLE_ARB, texid1);
...render texture1
glDisable(GL_TEXTURE_RECTANGLE_ARB);
glBindTexture(GL_TEXTURE_RECTANGLE_ARB, 0);
glEnable(GL_TEXTURE_RECTANGLE_ARB);
glBindTexture(GL_TEXTURE_RECTANGLE_ARB, texid2);
...render texture2
it's OK!
i think x1300 driver has some little bug.
Thinks for you reply!
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement