SIS Mirage 3 graphics card compatible driver

Started by
13 comments, last by vandana123 16 years, 7 months ago
yeah the forums over at forums.nvidia.com (not the developer forums though) and TechSpot forums too but i ain't trying to crucify the lad.
Advertisement
Vibe,
I am doing the same using glGetString and this is supposted by OpenGL.

As far as the question is using Glee and Glew i heared this name first time, i am loading Extensions API using getProcAddress.
steps are given below:

1)Initializing extension API;first of all getting all extension using glGetString supposted by OpenGL.

I checked that compressed extension is supported, then for compressed texture
calling lglGetProcAddress function for "glCompressedTexImage3DARB","glCompressedTexImage2DARB","glCompressedTexImage1DARB","glCompressedTexSubImage3DARB","glCompressedTexSubImage2DARB","glCompressedTexSubImage1DARB","glGetCompressedTexImageARB" APIs.

2) Checking for ARB_texture_compression extension which is retrieved; if this is supported then checking for OpenGL version which is 1.2.

3) Doing memoryset for texture image.
4) Opening bitmap file.
5) calling these functions as i mentioned earlier
//Get no for compression supported by the card
glGetIntegerv(GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB,&nNoOfFormat);

//Get generic compression format
glGetIntegerv(GL_COMPRESSED_TEXTURE_FORMATS_ARB,&nGenaricFormat);

6) finally calling
glTexImage2D(GL_TEXTURE_2D, 0, GL_COMPRESSED_RGB_ARB,
TextureImage[0]->sizeX,
TextureImage[0]->sizeY, 0,
GL_RGB, GL_BYTE,
TextureImage[0]->data);

when i am getting error code after this function using dwErrorCode = glGetError(); API, returns GL_INVALID_ENUM only with this card.

i already checked with format of it, please let me know any specific format if you know about it.

does it work when you are not using texture compression?

try changing the GL_COMPRESSED_RGB_ARB to just GL_RGB and see what happens.

Also try changing type to GL_UNSIGNED_BYTE and let me know what happens
o yeah one other thing i forgot to mention

this is taken from the official spec

"Generic compressed internal formats are not actual image formats, but are instead mapped into one of the specific compressed formats provided by the GL (or to an uncompressed base internal format if no appropriate compressed format is available)"

so you may want to check if your gpu supports something like s3tc or any other compression format.

Although this should not give you the error you are getting, as the spec says it should fall back to an uncompressed format if it can't find any compression algo's to use but as said many times before, it is SIS so anything could happen ;-)

If your exact code is working on other GPU's i think it is safe to assume it is indeed an SIS driver problem.
exactly it is workig on other place using the same function but creating compressed image its not working on SIS mirage 3.

one another thing i just checked it out, it is giving uncertain result, now glGenTextures function is getting failed with SIS Mirage 3 graphics card; i have not done any change to the previous code but other function is failed.

actually i am calling glGetError(); function to get dword value of returned code and checking like if(dwErrorCode != 0) to display error.


why am i getting these uncertain results?

This topic is closed to new replies.

Advertisement