Now I download one sample application for VBO test purpose.
In that application My OpenGL version shows as 4.4.0
Now I already have an application which is already using openGL lib so that I want to upgrade to VBO for rendering.
but when I update my code same as sample application it shows me a 1.1.0 version. so that I was unable to use VBO.
I am using wglCreateContext method in both application.
4.4.0 using createWindow function for creating dialog by window programming
1.1.0 using latest MFC code and load openGL in view.
I am using wglCreateContext method in both application.
4.4.0 using createWindow function for creating dialog by window programming
1.1.0 using latest MFC code and load openGL in view.
Then something’s wrong with the MFC code; e.g choosing indexed 8-bit palette drawing and other obsolete things a modern driver/gpu shouldn’t care about. I don’t have the MFC code nearby anymore, so I can’t see what it’s doing.
That’s what I also said. MFC is causing the issue by requesting an incredibly-obsolete PixelFormat configuration, that only the ancient GL1.1 software rasterizer supports. You need to fix MFC’s code or something.
Vishalvaza, your problem is quite normal for absolute beginner in OpenGL programming for Windows. Namely, Windows natively supports OpenGL only in version 1.1. If you need higher version you have to grab pointers to the functions directly from the driver. So, before going any further read the section Getting Started from the OpenGL Wiki.
[QUOTE=Aleksandar;1259661]How come? MFC has nothing with OpenGL.
Vishalvaza, your problem is quite normal for absolute beginner in OpenGL programming for Windows. Namely, Windows natively supports OpenGL only in version 1.1. If you need higher version you have to grab pointers to the functions directly from the driver. So, before going any further read the section Getting Started from the OpenGL Wiki.[/QUOTE]
This is actually probably not what’s going on.
Even if you don’t grab the function pointers, glGetString (GL_VERSION) should still give you the highest version supported by your driver after context creation. If your window can support a hardware-accelerated pixel-format, and if your driver supports hardware-accelerated OpenGL, then this will be 3.x or 4.x on all current and reasonable drivers.
Since the OP has confirmed GL 4.4 support with a different program we’re certain that the driver supports GL 4.4 (as it should for a GeForce 610).
What the OP needs to confirm is if the diagnosis of GL 1.1 only being available is coming from a glGetString (GL_VERSION) or from the function pointers not being available. From the previous posts the former seems most likely, which means that Microsoft’s software implementation is probably being used. In that case the cause would be something in the window creation code not allowing a hardware-accelerated pixel format. The challenge is to find out what that “something” is, which is why we then need to see the context creation code.
Another possibility is that this is a laptop with NVIDIA Optimus and the Intel gfx card has an OEM driver which doesn’t have OpenGL support. The test program uses the NVIDIA (because it exports the NvOptimusEnablement global) but the OP’s own program is using the Intel (because it’s not exporting the global). A glGetString (GL_VENDOR) can be used to check for that, but again we just need more information from the OP before we can start diagnosing possible causes.
If the OP can post the results of both a glGetString (GL_VERSION) and glGetString (GL_VENDOR) first, we can start making some real recommendations that may actually work. If these indicate GL 4.4 and NVIDIA we will need to see the context creation code. Anything else is just guessing.