Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'intern/opensubdiv/opensubdiv_capi.cc')
-rw-r--r--intern/opensubdiv/opensubdiv_capi.cc31
1 files changed, 6 insertions, 25 deletions
diff --git a/intern/opensubdiv/opensubdiv_capi.cc b/intern/opensubdiv/opensubdiv_capi.cc
index 66598948daf..9b9f4baa39e 100644
--- a/intern/opensubdiv/opensubdiv_capi.cc
+++ b/intern/opensubdiv/opensubdiv_capi.cc
@@ -295,29 +295,10 @@ const struct OpenSubdiv_TopologyRefinerDescr *openSubdiv_getGLMeshTopologyRefine
int openSubdiv_supportGPUDisplay(void)
{
- {
- /* Currently Intel GPUs has hard time working on Windows.
- *
- * For until we've got access to a hardware which demonstrates
- * the issue we disable OpenSubdiv on Intel GPUs.
- */
- static bool vendor_checked = false;
- static bool is_intel = false;
- if (!vendor_checked) {
- vendor_checked = true;
- const char *vendor = (const char *)glGetString(GL_VENDOR);
- if (vendor != NULL && strstr(vendor, "Intel")) {
- if(getenv("OPENSUBDIV_ALLOW_INTEL") == NULL) {
- is_intel = true;
- }
- }
- }
- if (is_intel) {
- return false;
- }
- }
-
- return GLEW_EXT_geometry_shader4 &&
- GLEW_ARB_gpu_shader5 &&
- GLEW_ARB_uniform_buffer_object;
+ // TODO: simplify extension check once Blender adopts GL 3.2
+ return openSubdiv_gpu_legacy_support() &&
+ (GLEW_VERSION_3_2 ||
+ (GLEW_VERSION_3_1 && GLEW_EXT_geometry_shader4) ||
+ (GLEW_VERSION_3_0 && GLEW_EXT_geometry_shader4 && GLEW_ARB_uniform_buffer_object && (GLEW_ARB_texture_buffer_object || GLEW_EXT_texture_buffer_object)));
+ /* also ARB_explicit_attrib_location? */
}