From 3f05d72a98ba443cd9c2bc25f85a5b77116e87e5 Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Wed, 16 Sep 2015 19:17:12 +0500 Subject: Fix T45708: OpenSubdiv crashes on Windows with Intel cards Disable Intel cards for until we'll go to the root of the issue of the crash. This will take a bit, so being so close to the release we go safe and disable unstable GPU, so blender at least doesn't crash. This could be bypassed by setting OPENSUBDIV_ALLOW_INTEL environment variable. --- intern/opensubdiv/opensubdiv_capi.cc | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'intern/opensubdiv') diff --git a/intern/opensubdiv/opensubdiv_capi.cc b/intern/opensubdiv/opensubdiv_capi.cc index 28d1c259246..dbd93a0a5e9 100644 --- a/intern/opensubdiv/opensubdiv_capi.cc +++ b/intern/opensubdiv/opensubdiv_capi.cc @@ -30,6 +30,7 @@ # include "iso646.h" #endif +#include #include #include @@ -294,6 +295,28 @@ 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) { + const char *vendor = (const char *)glGetString(GL_VENDOR); + const char *renderer = (const char *)glGetString(GL_RENDERER); + if (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; -- cgit v1.2.3