GLSL version error with any version OS X - opengl

I am trying to run an SDL2 application and it has shaders written in GLSL. When the shaders are compiled I get this message -> error version '130' is not supported.
I am on OS X 10.10, I have tried setting the the shaders to a different shader model version but with no luck.
Does anyone know anything that could cause this? The program runs but I get a black screen, I can hear the sound and I get the FPS output to a console.

Related

Can't load Cg shaders when RenderDoc is attached in OpenGL

I'm trying to debug my OpenGL game using RenderDoc, but if I launch from RenderDoc, then no graphics are shown and Cg outputs errors on startup. How can I get RenderDoc to work with my game?
I get a couple of errors:
cgGLGetLatestProfile(CG_GL_VERTEX) returns CG_PROFILE_ARBVP1 (a much lower profile than is returned when not launching from RenderDoc)
cgGLGetLatestProfile(CG_GL_FRAGMENT) returns CG_PROFILE_UNKNOWN
When trying to load a shader with this profile, or with a hardcoded newer one, it says The profile is not supported.
After that an additional error is output: fatal error C9999: InitHAL failed.
RenderDoc documentation mentions that dbghelp.dll shouldn't be used in combination with RenderDoc, so I removed our inclusion of dbghelp.lib and all references to the dll and the header from our code, so I think I'm not using dbghelp.dll anymore.
The GPU being used is a GeForce GTX 560 and on startup of the game GL_VERSION is reported as 4.6.0 NVIDIA 391.35. I've also tried running on a different computer with a newer videocard (Nvidia 1050ti) and I've tried installing the newest drivers but this didn't make any difference. This is all on Windows 10 64bit.
We also have a DirectX9 option in our engine. When I use this and launch the game from RenderDoc it starts fine and shows the RenderDoc overlay over the game. However, since RenderDoc doesn't actually support DirectX9 I can't capture a frame that way (which is as expected).

GLSL shaders won't compile on VM Fusion - Windows 10/Visual Studio 2017

I have VMFusion installed on an external hard drive that I have connected to my 2014 Macbook Pro Retina Display. In this VM I have Windows 10 installed (not genuine) and Visual Studio 2017. I have my solution loaded (we use OpenGL), but when I compile and run, the console complains "error: GLSL 3.30 is not supported. Supported versions are: 1.10, 1.20, and 1.00 ES" when compiling any of our shaders.
In the VMFusion settings menu under Display, I see that the option for "Accelerate 3D Graphics" is already on. This option supposedly "Supports DirectX 10 and OpenGL 3.3". So I'm confused as to why I'm getting the error message about GLSL when I'm running my project. Does anyone have any ideas as to what is going on or how to solve this? I have the proper nuget packages installed and it seems like all the C++ code compiles just fine. It's purely the shaders. Is this a VMFusion problem or something not set up with my laptop?
On your virtual machine, try to add next variables:
MESA_GL_VERSION_OVERRIDE 3.3
MESA_GLES_VERSION_OVERRIDE 3.2
MESA_GLSL_VERSION_OVERRIDE 330
in both sections "User variables" and "System variables"
To open "Advanced system settings" follow Control Panel -> System and Security -> System click on "Adanced system settings"
It's difficult to answer without further details (your GPU, the exact settings of the VM, etc).
However, I would suggest to check a few things:
Are VMware tools installed correctly on the guest OS?
What kind of profile are you requesting when you create your context (core or compatibility?) As far as I understand, VMware guests can get only OpenGL 3.3 core profile.
Then you can also have a look at VMware Fusion documentation about these issues here

How to make GPU PerfStudio & GLEW play nicely?

I have a basic application which runs just fine, uses OpenGL 4.3 core profile & GLEW 1.11.0.
However, when I run it through GPU PerfStudio, it crashes right on glewInit, yielding an error saying "Missing GL version".
The context is created before glewInit is called, of course (and as mentioned it runs perfectly fine on its own).
How can this problem be solved?
Update:
Win32 binaries work perfectly fine - this only happens with x64.

NSight crash at frame profile

I'm using Visual Studio 2012.
Nsight Visual Studio:
Version 3.2.2
Build Number: 3.2.2.13342
My Graphics Card Information:
GeForce GT 720M
Driver version: 33182
Directx 3D version: 11.1
OpenGL 4.4
Each time I try to pause and capture a frame, and then click in Frame Profile, my program crash. This apply for all OpenGL program in my computer. First, I though it could be due to the Operating System, so I installed the OS again, but it still crashes.
This is the stack at the time the program crashes.
Before crash
Crash
I saw a crash error by NSight here, but it seems different from me.
You're best off reporting bugs in Nsight to Nvidia. 3.2.2 is a very new version and chances are it's going to be something someone hasn't reported yet.
https://devtalk.nvidia.com/default/board/84/nsight-visual-studio-edition/
The likely culprits will be using a newer or slightly out-of-the-ordinary OpenGL extension that the tool doesn't support yet. If you want to get to the bottom of it, binary chop parts of your application out until it does capture properly and add them back in until it stops working.

OSX and OpenGL : ERROR: Internal error <FBConfig with necessary capabilities not found> in function fgOpenWindow

I have an OpenGL project I'm attempting to run in OSX 10.8, so far the project compiles correctly and when you attempt to start it, XQuartz will come up. However, before anything appears on the screen, the following error comes up.
ERROR: Internal error <FBConfig with necessary capabilities not found> in function fgOpenWindow
I've never seen this error before and Googling it hasn't provided any answers. I'm wondering if anyone has come across it before and knows how to get rid of it.
Thanks.
For some reason your program uses X11 to create windows and attempts to create an OpenGL context through that. However the X11 server shipping with OS X is rather limited and has only limited support for OpenGL.
You should change your program in a way that on OS X it creates Windows natively uses the system's OpenGL Framework instead of trying to use X11 on OS X.