Closed logzero closed 10 years ago
Would be awsooome :)
Someone with a mac and gl3 compatible gpu has to test it.
Unfortunately I have a rubbish GPU :(
I have an 2010 Macbook Pro. I think it has a nVidia 320M. Don't think it is capable.
Here is a list of GPUs supporting OpenGL3.2: https://developer.apple.com/graphicsimaging/opengl/capabilities/GLInfo_1074_Core.html
The bad news is that the GL3 renderer is checking for GL3.3. Need to see what changed from 3.2 to 3.3, whether it would run with 3.2 too.
A quick check shows that the difference between 3.2 and 3.3 is OpenCL support. 3.2 might be enough for us.
You have to change in graphics/gl3v/glwrapper.cpp const char * REQUIRED_GL_VERSION = "GL_VERSION_3_3";
to const char * REQUIRED_GL_VERSION = "GL_VERSION_3_2";
Sorry guys. The GL3 renderer is using sampler objects. They are only available in OpenGL >= 3.3.
:( Surprisingly my GPU does support 3.2 (integrated Intel HD Graphics 3000)
Yes... Mine also... Doh :(
Well, on Windows Intel HD 2000-4000 support OpenGL4.2 from what I've heard. It is very recent though(latest driver?).
The 320M is limited to GL3 not sure if it supports 3.3.
Correction OpenGL4.2 is only available for HD4000/2500 (DX11). HD 3000 is also stuck at GL3.
What about upgrading to sampler objets?
Not sure what you mean antonio.
Sampler objects is just a new way to deal with textures. Btw it is just a driver feature. Recent Intel Linux driver (i965) supports them for example. I need to test it. I could be that it might even work on my really old Intel GM45.
Could you guys try the changes listed above? glewExperimental and GL_VERSION. In the worst case it will simply segfault.
Just falls back to gl2:
INFO: Video card information:
GL Vendor: Intel Inc.
GL Renderer: Intel HD Graphics 3000 OpenGL Engine
GL Version: 2.1 APPLE-8.0.57
Texture units: 8 full, 16 partial
Maximum texture size: 8192
Maximum varying floats: 60
INFO: You don't have an NVIDIA or ATI/AMD card. This game may not run correctly or at all.
INFO: Using GLEW 1.9.0
INFO: Loading /Users/timothyfurlong/Library/Developer/Xcode/DerivedData/vdrift-eocrkhmqkyrhspdqehaffuenmtqr/Build/Products/Debug/VDrift.app/Contents/Resources/data/shaders/gl3/vdrift1.rhr...
INFO: Loaded /Users/timothyfurlong/Library/Developer/Xcode/DerivedData/vdrift-eocrkhmqkyrhspdqehaffuenmtqr/Build/Products/Debug/VDrift.app/Contents/Resources/data/shaders/gl3/vdrift1.rhr
ERROR: Unable to compile shader simple.vert from file /Users/timothyfurlong/Library/Developer/Xcode/DerivedData/vdrift-eocrkhmqkyrhspdqehaffuenmtqr/Build/Products/Debug/VDrift.app/Contents/Resources/data/shaders/gl3/simple.vert:
ERROR: 0:1: '' : version '330' is not supported
ERROR: 0:5: 'invariant' : syntax error syntax error
ERROR: Initialization of GL3 renderer failed; that's OK, falling back to GL 1 or 2
The video card information shows that VDrift can only see gl2.1. Using http://itunes.apple.com/app/opengl-extensions-viewer/id444052073?mt=12 shows that changing the OpenGL profile to "Core" enables 3.2, whereas "Compatibility" only 2.1. From what I can see we need SDL 2 for 3.2 http://forums.libsdl.org/viewtopic.php?t=7550 I have a SDL 2 framework built, and you said you had a patch for SGL-gfx, so I could test if you want.
So you are getting to compile the shaders? This means it passes GL3.2 check. The ugly thing is that the shaders ask for GLSL 3.30 which comes with GL3.3. This means we would have to check whether the shaders are using any 330 features.
TImo6 go into data\shaders\gl3 and rename "#version 330" to "#version 150" in the .frag and .vert files.
Get the same, but
ERROR: Unable to compile shader simple.vert from file /Users/timothyfurlong/Library/Developer/Xcode/DerivedData/vdrift-eocrkhmqkyrhspdqehaffuenmtqr/Build/Products/Debug/VDrift.app/Contents/Resources/data/shaders/gl3/simple.vert:
ERROR: 0:1: '' : version '150' is not supported
ERROR: 0:5: 'invariant' : syntax error syntax error
That sucks. You can try "#version 140" and "#version 130" but the probability that shaders won't compile will rise.
I did 130, but that did the same.
On 2 Sep 2012, at 18:30, logzero notifications@github.com wrote:
That sucks. You can try "#version 140" and "#version 130" but the probability that shaders won't compile will rise.
— Reply to this email directly or view it on GitHub.
@logzero could you post that patch for SDL2_gfx somewhere, then I can try building VDrift with SDL2.
Here the patch: https://gist.github.com/3604362 . I've updated it against SDL_gfx-2.0.24.tar.gz.
Put "glewExperimental = GL_TRUE;" before "glewInit();" and check if OpenGL3 context can be acquired and GL3 renderer is selected, functioning.