I have been attempting to use the pause frame feature in NSsight, but when I do, NSight tells me I need at least OpenGL 3.3 for this feature. I am using an NVidia Geforce 525m, which should support up to GL 4.5. I have the latest drivers. My shaders use GLSL 420 and they work just fine.
I thought perhaps my GL Context creation was incorrect. I made use of wglCreateContextAttribsARB to specify my desired version numbers (4.2). I also tried the SDL library to handle GL context creation for me.
As per the instructions here: https://www.opengl.org/wiki/Get_Context_Info I used the following to check my version number:
both return 4. So it looks like I am creating a context with version 4.4. I really don’t understand why NSight thinks its 3.0. Ideas and suggestions would be greatly appreciated!
Seems you are using Optimus system, the OGL 3.3 requirement is for Nsight in Visual Studio, but not for your sample [your sample is under 4.4 as the return value from glGetIntegerv]. That because Nsight in Visual Studio will use OGL 3.3 to render some texture, geometry, etc. Due to your Optimus system, that choose Intel GPU as Visual Studio’s render device, which may only support OGL 3.0 in your machine.
Please try to disable Intel GPU in BIOS, or force Visual Studio to use NV GPU as render device. That will solve your issue.
Thank you for your response!
I have a Dell XPS 15Z and disabling Optimus does not seem to be an option in my BIOS. Disabling my Intel chip in my Windows Device Manager seems to disable GPU acceleration entirely.
Can you suggest any workarounds or ideas?
I can show you some suggestion, but I’m not sure which one may work for you, since I don’t have your laptop.
- try to disable Intel GPU in BIOS
- try to force run your visual studio on NV GPU, try to right click on your devenv.exe and select “Run with graphics processor->High-performance NVIDIA processor”
- try to update your Intel GPU driver make it support OGL 3.3
Thank you again for your prompt response. The following worked for me, and perhaps this may be useful for others facing this problem:
- Connect an external monitor (I used an HDMI connection)
- Go to my Windows Device Manager and disable my Intel chip
My laptop monitor goes black, but the external monitor then runs entirely on the NVidia GPU, and I can run NSight’s frame debugger without incident. I do have to re-enable my my Intel chip before restarting or funky stuff happens, but the slight nuisance is worth the valuable capabilities of NSight.
Thank you! My issue is resolved.
So glad that nsight works on your side. :)