OpenGL: require EXT_gpu_shader4 & ARB_framebuffer_object on Mac

Mac’s OpenGL version is furthest away from our target of GL 3.2. This
commit brings Mac closer to other platforms, so that our shaders and
other code don’t diverge too much during development.

According to Apple’s OpenGL matrix these useful extensions are
available on all GPUs that will be able to run Blender 2.8.

Only checked in debug builds; we might need something more forceful.

Part of T49012
This commit is contained in:
Mike Erwin 2016-08-04 20:25:47 -04:00
parent 396dd82428
commit 32757d488f
2 changed files with 3 additions and 4 deletions

View File

@ -130,8 +130,8 @@ void GPU_get_dfdy_factors(float fac[2])
void gpu_extensions_init(void)
{
/* BLI_assert(GLEW_VERSION_2_1); */
/* ^-- maybe a bit extreme? */
BLI_assert(GLEW_VERSION_3_0 || /* Mesa mininum requirement */
GLEW_VERSION_2_1 && GLEW_EXT_gpu_shader4 && GLEW_ARB_framebuffer_object); /* Mac minimum requirement */
glGetIntegerv(GL_MAX_TEXTURE_IMAGE_UNITS, &GG.maxtextures);

View File

@ -186,8 +186,7 @@ static void gpu_shader_standard_extensions(char defines[MAX_EXT_DEFINE_LENGTH],
}
if (!GLEW_VERSION_3_0 && GLEW_EXT_gpu_shader4) {
strcat(defines, "#extension GL_EXT_gpu_shader4: enable\n");
/* TODO: maybe require this? shaders become so much nicer */
strcat(defines, "#extension GL_EXT_gpu_shader4: require\n");
}
}
}