Part of the Khronos Group
OpenGL.org

The Industry's Foundation for High Performance Graphics

from games to virtual reality, mobile phones to supercomputers

Page 1 of 2 12 LastLast
Results 1 to 10 of 13

Thread: nv gl version(cass)

  1. #1
    Junior Member Regular Contributor
    Join Date
    Dec 2000
    Location
    USA
    Posts
    223

    nv gl version(cass)

    Why is nv exporting gl 1.x versions above 1.1 in their windows drivers? Also, why isn't the ext_vertex_array thrown out of nv docs when ext_polygon_offset is? What's going on?

    I thought that above gl 1.1 on windows we got to use the extensions despite any improvements to their gl core counterparts. wglGetProcAddress() suppose to only return extensions not gl core functions. Though getting at core functions also work(as far as I remember) for some strange reason. Thanks.

  2. #2
    Senior Member OpenGL Pro
    Join Date
    May 2000
    Location
    Naarn, Austria
    Posts
    1,142

    Re: nv gl version(cass)

    No, wglGetProcAddress is supposed to return extension functions AND core functions above 1.1.

    EXT_vertex_array is not thrown out because there could be very old GL programs around that were written when this functionality was not in the core and that depend on this extension. Strictly speaking, an extension should never be thrown out, no matter if its in the core now...

  3. #3
    Junior Member Regular Contributor
    Join Date
    Dec 2000
    Location
    USA
    Posts
    223

    Re: nv gl version(cass)

    I see. Still kind of strange that poly offset is not documented in nv/ati docs. Do folks bother about using gl core? It's probably more trouble then it's worth, imo. I remember ati sat on the gl 1.3 for like ages while nv was at 1.4 already. So the only sensible way to me is to use extensions and forget about the core unless one wants d3d like headache. Thoughts?

  4. #4
    Junior Member Regular Contributor
    Join Date
    Dec 2000
    Location
    USA
    Posts
    223

    Re: nv gl version(cass)

    So basically, we have to check ext. string and not rely on gl version alone. For example the arb_multisample is void for gf1/2 eventhough driver for this card exposes gl 1.5 which is well above 1.3 what's needed for this extension. If I relied on gl version alone then something icky would happen.

  5. #5
    Junior Member Regular Contributor
    Join Date
    Dec 2000
    Location
    USA
    Posts
    223

    Re: nv gl version(cass)

    Ok, one last thing. I think ihvs should mirror the sgi docs and expose all the extensions that gl core is made out of. That way since I can't depend on gl version w/o also querying ext. string, I would know which extension to query by looking up sgi specs rather than playing a detective and crossreferencing ihv docs as in example of SGIS_texture_edge_clamp which sgi adopts and makes it into core, yet my nv driver doesn't expose this extension and it exposes ext_texture_edge_clamp instead which isn't listed as the one that's being adopted in the gl core. Weird, huh?

  6. #6
    Senior Member OpenGL Pro
    Join Date
    Aug 2000
    Location
    Portsmouth, Hampshire, England
    Posts
    1,063

    Re: nv gl version(cass)

    I dont bother checking core version, I just check to see if the extensions are available.

    The last time I had a look at the core spec, it was in some ghastly font, so I dont bother.

  7. #7
    Senior Member OpenGL Pro
    Join Date
    Feb 2002
    Location
    Bonn, Germany
    Posts
    1,652

    Re: nv gl version(cass)

    Originally posted by Nutty:
    I dont bother checking core version, I just check to see if the extensions are available.
    Agreed.
    The last time I had a look at the core spec, it was in some ghastly font, so I dont bother.
    You should download a newer rev. The font is much nicer (it's truly scalable now) and bookmarks and cross-section links have been added. Much easier to navigate and read than the 1.2.1 spec

  8. #8
    Member Regular Contributor CrazyButcher's Avatar
    Join Date
    Jan 2004
    Location
    Germany
    Posts
    402

    Re: nv gl version(cass)

    what is ugly so that the multi-texture description is gone in the newer spec. Actually the whole multi-texture description is hard to find in a "readable state" as that older spec doc is really ugly to read, and on SGI they dont have the .txt for the ARB/SGIS_multitexture extension anymore...
    however some older nvidia paper had a nice description of its functionality

  9. #9
    Junior Member Regular Contributor
    Join Date
    Dec 2000
    Location
    USA
    Posts
    223

    Re: nv gl version(cass)

    I've also noticed that those sgi exe docs aren't being updated while ihv ones are. So that's something to note.

    Ok, so you guys are using gl_arb_blah to see if the ext. string has that extension and then if it does you actually retrieve gl core function w/o the arb affix? I always got the arb affixed function out but now I'm rethinking this whole ordeal and would rather use gl core because of some of these following extensions that have changed a bit when migrated to the gl core. Also, I noticed that lately ext extensions made it to the core before being promoted to arb status first. Seems to me like that arb thing they had going since gl 1.2 kind of deteriorated. I mean what's the point if you going to grab 'ext' and put it into the core anyways.

    Ok, these exts have changed a bit when migrated to the core:

    gl 1.1
    ext_vertex_array
    ext_polygon_offset
    ext_blend_logic_op
    ext_texture
    ext_texture_object

    gl 1.2
    ext_packed_pixels

    gl 1.3
    arb_multisample

    gl 1.4
    ext_texture_lod_bias

    I think there should be a separate glGetStringCore() to see if a core functionality is supported for the gpu. I can't rely on checking gl version only because some features are not supported(not emulated) for my card. Also, it would reduce the confusion of using an extension name to see if core functionality is supported. Kind of strange the way it's now.

    Ok, so what do you think about me checking gl version + extensions(that made it to core along ihv ones) then grabbing function pointer with a name that omits the 'arb' or 'ext' or 'ihv' moniker in the name. I should then be getting the core function not the extension, right? Thanks.

  10. #10
    Junior Member Regular Contributor
    Join Date
    Dec 2000
    Location
    USA
    Posts
    223

    Re: nv gl version(cass)

    I just checked, the value from wglGetProcAddy() is not null when a function isn't supported. This spells trouble. What name do I use when I want core gl function? I can't use sgis_texture_edge_clamp since my driver doesn't publish it(this ext. is in sgi core gl specs as being the one that the core is based on). Is it safe to use ext_texture_edge_clamp instead and then get gl core function w/o the ext affix? Or do I get back extension function instead? Thanks, an am sorry for asking these questions which would never surface if I stuck to my "use extensions only policy" but I would like to use the core instead to get the improvements that were done to those extensions. Thanks.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •