OpenGL clarifications...

Hi All,

I am working on some of the following areas, like Glide2, OpenGL. In this process I have come across the following issues. Could anybody assist me in these.

  1. I want to have details about Glide - OpendGL porting and the issues involved in this.

  2. How 444, 555, pig graphics formats can be ported to OpenGL compliant?.

  3. Some info on: “loading avi files in OpenGL”.

I would be grateful to have the above details from any of our forum members.

bye.

Glide is even more dead than 3dfx, so I’m going to skip over that part of your question

Also, I’m not sure if this is entirely what you meant with your second question, but you can feed 16-bit textures into glTexImage*() by specifying GL_RGB4, GL_RGB5 or one of the related internal formats and using GL_SHORT as the data type. Look up the specifics in the OpenGL spec.

As for your third question, you can use VFW or DirectShow to stream a video into a texture. Demos of both can be found on my site:
http://www.gamedeveloper.org/delphi3d/projects/u3d/files/demos/vid2tex.zip
http://www.gamedeveloper.org/delphi3d/download/VideoTex.zip

Delphi source code is included with both.

  • Tom

> 1. I want to have details about Glide - OpendGL porting and the issues involved in this.

It can be not so trivial task…
Some of the Glide’s capabilities cannot be ported to OpenGL (nor Direct3D).
You can emulate some features, but not everything.

> 2. How 444, 555, pig graphics formats can be ported to OpenGL compliant?.
GL_EXT_packed_pixels
Packed pixels in OpenGL 1.2

Hi Mr. Serge,

Thnx for ur suggestions.

But when I tried to load .444 and .565 formats using OpenGL in my application I didn’t get the output. I think the OpenGL version which I’m using is not supporting these packed pixel formats. Currently my OpenGL version supports the following extensions:

        GL_WIN_swap_hint
        GL_EXT_bgra
        GL_EXT_paletted_texture

but in “gl.h” file which is included in my application has the following defines also:

#define GL_EXT_vertex_array 1
#define GL_EXT_bgra 1
#define GL_EXT_paletted_texture 1
#define GL_WIN_swap_hint 1
#define GL_WIN_draw_range_elements 1

Could you please guide me in this regard. That is… how can I enable the required extensions in my present version of OpenGL. Suppose, if I have to update my OpenGL version to support these extensions means, how and where can I get the updated OpenGL version.

awaiting your reply,

bye,
Ganesh.

It looks like you are probably using the Microsoft GDI Generic driver. You can find out the vendor/renderer by using glGetString with the parameters GL_VENDOR and GL_RENDERER. What video card are you using? You should probably try upgrading the drivers, but if you have a card without very good OpenGL support even that might not do you much good in the way of getting the extensions you want.

Hi,

  1. I am using Intel 810 graphics card for OpenGL acceleration. Now I got the driver for the same and this driver supporting more than 10 OpenGL extensions. I am able to load the 4444 and 5551 format through the EXT_packed_pixels. Our 4444 format has no backgrounds, but in OpenGL, the background part displaying as yellow color. Is it because of alpha channel? How can I disable the yellow color for the backgrounds?

  2. EXT_packed_pixels not supports the 565 format. I saw packed_pixels extension in OpenGL1.2 supporting 565 format as per Mr. Serge’s reply. How can I get the OpenGL 1.2 ?

  3. I tried to load the palette textures in my application. My current graphics driver supports the extension EXT_palette_texture. But VC library is not supporting the function glColorTableEXT. Is there any function to load the palette texture? How can I get the OpenGL library, which includes this function?

Bye,
Ganesh.

toms right, you dont need packed pixels just ask for a texture internal format of 4444 or 565. check my site theres a demo showing you how various internal formats look on your machine. btw it makes a difference what your desktop is set to ie 16/32bit