Skip to content

Commit 9f7c0eb

Browse files
committed
Update gfxGLDevice.sdl.cpp
set shader model for opengl devices (going to be needed later for shader editor)
1 parent 94c39be commit 9f7c0eb

1 file changed

Lines changed: 21 additions & 1 deletion

File tree

Engine/source/gfx/gl/sdl/gfxGLDevice.sdl.cpp

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,7 @@ void GFXGLDevice::enumerateAdapters( Vector<GFXAdapter*> &adapterList )
137137
{
138138
return;
139139
}
140+
Con::printf("OpenGL Version: %d.%d", major, minor);
140141

141142
// Set our sdl attribute to use this version.
142143
SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, major);
@@ -169,7 +170,26 @@ void GFXGLDevice::enumerateAdapters( Vector<GFXAdapter*> &adapterList )
169170
dStrcpy(toAdd->mName, "OpenGL", GFXAdapter::MaxAdapterNameLen);
170171

171172
toAdd->mType = OpenGL;
172-
toAdd->mShaderModel = 0.f;
173+
F32 shaderModel = 3.3;
174+
if (major == 4)
175+
{
176+
if (minor == 0)
177+
shaderModel = 4.00f; // GLSL 4.00
178+
else if (minor == 1)
179+
shaderModel = 4.10f; // GLSL 4.10
180+
else if (minor == 2)
181+
shaderModel = 4.20f; // GLSL 4.20
182+
else if (minor == 3)
183+
shaderModel = 4.30f; // GLSL 4.30
184+
else if (minor == 4)
185+
shaderModel = 4.40f; // GLSL 4.40
186+
else if (minor == 5)
187+
shaderModel = 4.50f; // GLSL 4.50
188+
else if (minor == 6)
189+
shaderModel = 4.60f; // GLSL 4.60
190+
}
191+
192+
toAdd->mShaderModel = shaderModel;
173193
toAdd->mCreateDeviceInstanceDelegate = mCreateDeviceInstance;
174194

175195
// Enumerate all available resolutions:

0 commit comments

Comments
 (0)