Official NVIDIA OpenGL 3.0 beta driver thread

Suppose I create a GL3 context with a GL2 context as the hShareContext. If this call succeeds, should I be able to use the programs previously created in the GL2 space with the new GL3 context?

Suppose I create a GL3 context with a GL2 context as the hShareContext. If this call succeeds, should I be able to use the programs previously created in the GL2 space with the new GL3 context?

Yes, if the call succeeds, you should be able to use previously created objects in the new context.

Now, whether the call will succeed (especially in 3.1 if they remove the deprecated stuff)…

The call succeeds but I’m getting an INVALID_VALUE the moment I try to bind one of the programs in the new context (glIsProgram returns false).

If I defer program creation to after the 3.0 context is created, all is right with the world (this seems like a good strategy).

Well, it is a beta. File a bug on it.

I’m getting an invalid enum on GetIntegerv with MAJOR_VERSION, but only the first time I make the call. In all cases the values returned for both major and minor seem random.

[8800 GTS, Vista x86 SP1]

Do newer drivers have any GL3 support?
I’m trying the 178.13 released yesterday, but not getting WGL_ARB_create_context in the WGL extension string or any other sign of it working, even with it enabled in nvemulate.

Do newer drivers have any GL3 support?

If they did, I’m sure nVidia would have told you.

They currently have 3.0 beta drivers, and that’s all.

And only for Windows (not Linux).

Looking for new ones on Linux both for GL3 and since the more recent ones have an alleged fix for the PBO 46MB upload stall.

Using 177.89 drivers in gl3 mode, glBindRenderbuffer seems to only accept renderbuffer names which have been returned from glGenFramebuffers instead of those returned from glGenRenderbuffers.

for example:


  glGenRenderbuffers(1,&rb);
  glBindRenderbuffer(GL_RENDERBUFFER,rb);

gives GL_INVALID_OPERATION
but


  glGenFramebuffers(1,&rb);
  glBindRenderbuffer(GL_RENDERBUFFER,rb);

runs with no errors.

Sounds like a bug (hence the Beta). File a bug report on it.

All,

Linux drivers are now available for download, as well as an update to the Windows drivers.

http://developer.nvidia.com/object/opengl_3_driver.html

New features:

*  Linux support - OpenGL 3.0 and GLSL 1.30 functionality support between the Linux and Windows releases are identical.
* Now allows rendering to a FBO with mixed-size attachments
* VAO bug fixes and performance improvements
* EXT_texture_swizzle support
* Transform feedback missing functionality is implemented
* Various other bug fixes

Barthold
(with my NVIDIA hat on)

What’s EXT_texture_swizzle ? Never heard of it before (and google neither, apparently).

The link is on the same page
http://developer.download.nvidia.com/opengl/specs/GL_EXT_texture_swizzle.txt

For those that are looking to run on mobile versions, I’ve used this with good success: http://www.driverheaven.net/nvmodtool.php

One thing to mention though is that in the past, the driver installation would put the temporary files into C:\NVIDIA.… making it easy to modify. With this new version, however, it appears they’ve moved the location of these files, and they get deleted if the drivers don’t support your card (which is the case with most mobile devices). I did a bit of exploring and found that it places the driver files in a folder located in “C:\Documents and Settings\UserName\Local Settings\Temp.…” (In my case the folder was called “WZSE0.TMP”, but I don’t know if that would be the same for everyone).

To get this to work you have to start the installation, and when the “NVIDIA Setup Error” dialog box pops up saying you don’t have supported hardware, don’t click “OK”, but go find the folder and copy it to some other location.

The NVIDIA OpenGL 3 drivers are no longer in beta. Release drivers, with all OpenGL 3.0 features implemented, for both Windows and Linux, are here:

http://developer.nvidia.com/object/opengl_3_driver.html

Barthold
(with my NVIDIA hat on)

I noticed news about the new driver at techreport.com today. Great news!

I haven’t been coding GL stuff for like 2 years, but I’m definitely going to try out the new features as soon as I can.

I also like the EXT_direct_state_access idea a lot. The old state management is a bloody mess. I hope this extension, or something like it, gets promoted to core real soon.

Hi and sorry for posting in this thread, but since the new driver includes new extensions for GL 2.1, i thought it would be the appropriate place to ask.

Are there any plans on supporting GL_ARB_instanced_arrays on GL 2.1 hardware (SM3.0)?

Thanks. If this isn’t the correct place to ask this, please say it i’ll create a new thread.

HellRaiZer

It’s not the only OpenGL 3.0 feature missing …
No map_buffer_range … hummm It’s still the time of the messy drivers that claim to be what they are not and make feature detection so scary and random. :stuck_out_tongue: Anyway still I can rely on extensions strings that’s ok but it would be so nice to just check the OpenGL version.

If you mean this one, then it is included in the latest (181.00) drivers even on my old 7950.

HellRaiZer

Great! :slight_smile:

I didn’t see the entry point for glMapBufferRange in glView but this look like a bug I guest.

I pretty sure that GL_ARB_instanced_arrays will be implemented, Michael Gold worked on it, it would make sense :slight_smile: