How to update OpenGL


I have a question: How do I upgrade to OpenGL?
I need to run Android emulator. When I update the video driver does it update together?


OpenGL isn’t software so it cannot be upgraded as though it were. Yes, it’s provided by your video card driver, but be aware that the highest OpenGL version you can have is the highest supported by your video card. If you need higher, you need a new video card.


But for example, my board allows opengl up to 3.0 and mine is in a version of 2.1.1.
How do I use 3.0?


[QUOTE=cezar783;1284988]How do I upgrade to OpenGL?
I need to run Android emulator. When I update the video driver does it update together? [/QUOTE]

Just to be clear, what are you trying to accomplish (and why)?

Do you want to upgrade the OpenGL implementation on the PC you’re going to run the Android Emulator on (to one that supports OpenGL 3.0)?

Or do you want to upgrade the “OpenGL ES” implementation that runs inside your emulator (to one that supports OpenGL ES 3.0)?

(I say “OpenGL ES” in the latter rather than OpenGL because it is more commonly used on the embedded platforms supporting Android.)


I know how to update the video driver. But I’m kind of confused about opengl. Is it possible to use a higher version than the one I am using now? If I upgrade the video driver to the latest version will I be using a higher-level opengl version so far for the board?


Ok, the way it typically works is when you update your video driver that updates the OpenGL implementation that it provides. Your video driver will support up to OpenGL version X (for some X) on at least some of the newer GPUs.

If your GPU is fairly recent and supports OpenGL version X, then your driver should provide up to OpenGL version X capability to your OpenGL application on that GPU. However, if your GPU is older and doesn’t support OpenGL version X, then your driver will provide up to OpenGL version Y capability (for some Y < X) to your application.

So version Y is the maximum version you can support on that specific driver and GPU. Your app can then create a GL context for that version or any version <= Y.

Before you play musical drivers though, you can see what the latest version of OpenGL that your GPU supports by looking it up on the GPU vendor’s web site, or looking it up on the OpenGL Capabilities Database and looking at the GL_VERSION the driver reported. If you’re unsure how to do that, post your GPU make/model and we’ll try to help you out.


With this, is the video driver responsible for providing the ideal version of opengl for gpu? Is that what you meant? The translation did not allow me to understand well.

Are the items marked in red the ones that do not work well?



Are the items marked in red the ones that do not work well?

I’m not sure which web page you’re seeing red on, and you didn’t say which GPU you have. But to take an example:

Here you can see a lot of red and green (is this the red you’re talking about?). Green means the extension “is supported” on that driver. Red means the extension is “not supported” on that driver. If you’ll step back and look at the reports on this page (specifically the OSs listed in the top line and the GL_VERSION line), you can see that on Linux and Windows, this GPU supports OpenGL 4.3-4.5 depending on which version of the driver is installed. But on Mac (OS X) drivers, it appears users are limited to OpenGL 2.1.


But if I want to download some extension that the operating system meets, but that is not the one offered by the driver, I can use? Or should I keep the version that the driver makes available?

Note: The link you indicated is broken, but I was able to view


4.1 actually, if the app figures out how to request core profile.


How would you propose doing this, short of updating the graphics driver that provides OpenGL support?

Or should I keep the version that the driver makes available?



I figured it would be possible to modify the version of OpenGL independently, that is, manually. So opengl does not get download?


No, OpenGL is not software.


OpenGL is a software interface (API) defined by a specification. That API is implemented by your graphics driver.

So whether or not the OpenGL implementation on your system can be updated independently is determined by the folks that implemented it (usually the GPU manufacturer). In my experience, they don’t usually allow you to update the OpenGL implementation separately. It comes packaged with all the graphics drivers for that GPU.

One exception is if you want to use a completely software OpenGL implementation, such as Mesa3D. With that you can update it independently.


Which can provide some hardware acceleration. But that’s true that under Windows this might not happen.


That is, is not this recommended for inexperienced people?


No. Mesa3D isn’t hard to use if you just want a pure software implementation of OpenGL.

What Silence is referring to is that on MS Windows (Vista+), the OS completely takes over access to the GPU(s) (meaning: GPU hardware acceleration via the graphics driver). Because of that, it’s unlikely Mesa3D will ever provide full native GPU hardware-acceleration for OpenGL on those versions of Windows. To do so, it’d likely need implement the OpenGL API via an awkward Direct3D back-end (like TitaniumGL does for OpenGL 1.4, or ANGLE can for OpenGL ES 2.0-3.1).

No problem running a software implementation of OpenGL (like Mesa3D) though.


From memory the Intel 4 series should be able to support up to OpenGL 2.1.

What might be happening is that some laptop manufacturers supplied OEM drivers (i.e. drivers downloaded from your laptop manufacturer’s website rather than from Intel) that didn’t include any OpenGL support at all, so when you see that the current GL version is 1.1 what you’re probably seeing is the version of the default Microsoft software implementation. You can verify this by checking glGetString (GL_VENDOR) and glGetString (GL_RENDERER), or using a tool like the OpenGL Extensions Viewer.

If this is the case there is a workaround, but it’s a little involved. It requires using the “have disk” driver installation method to install the correct driver from Intel’s website, and is documented here: