Game crashing on Linux in VMware
I have a small game that I am developing for Linux. I am trying to use a virtual machine for testing but the game keeps crashing. It seems to be an OpenGL issue but I've checked all the drivers and everything seems correct. What other debugging can I do? I am using Unity 5.3.0f4 pro, Ubuntu 64 and VMware Workstation 12. Here is the log file.
Thanks,
Selecting FBConfig GLX_FBCONFIG_ID=139 GLX_BUFFER_SIZE=32 GLX_DOUBLEBUFFER=1 GLX_RED_SIZE=8 GLX_GREEN_SIZE=8 GLX_BLUE_SIZE=8 GLX_ALPHA_SIZE=8 GLX_DEPTH_SIZE=24 GLX_STENCIL_SIZE=8 GLX_SAMPLES_ARB=0 GLX_SAMPLE_BUFFERS_ARB=0 GLX_STEREO=0 GLX_CONFIG_CAVEAT=NONE
Desktop is 1625 x 1498 @ 60 Hz Initialize engine version: 5.3.0f4 (2524e04062b4) GfxDevice: creating device client; threaded=0 GLX Extensions: GLX_ARB_create_context GLX_ARB_create_context_profile GLX_ARB_fbconfig_float GLX_ARB_framebuffer_sRGB GLX_ARB_get_proc_address GLX_ARB_multisample GLX_EXT_import_context GLX_EXT_visual_info GLX_EXT_visual_rating GLX_EXT_framebuffer_sRGB GLX_EXT_create_context_es2_profile GLX_MESA_copy_sub_buffer GLX_MESA_multithread_makecurrent GLX_MESA_query_renderer GLX_MESA_swap_control GLX_OML_swap_method GLX_SGI_make_current_read GLX_SGI_video_sync GLX_SGIS_multisample GLX_SGIX_fbconfig GLX_SGIX_pbuffer GLX_SGIX_visual_select_group GLX_EXT_texture_from_pixmap Setting maxVSyncInterval to 0 Renderer: Gallium 0.4 on SVGA3D; build: RELEASE;
Vendor: VMware, Inc. Version: 2.1 Mesa 10.5.9 GLES: 0 glGetString(GL_EXTENSIONS) - failureOPENGL LOG: Creating OpenGL 0.0 graphics device -------- Shader compilation failed #version 150 #extension GL_ARB_explicit_attrib_location : require #extension GL_ARB_shader_bit_encoding : enable uniform vec4 _Time; uniform vec4 _SinTime; uniform vec4 _CosTime; uniform vec4 unity_DeltaTime; uniform vec3 _WorldSpaceCameraPos; uniform vec4 _ProjectionParams; uniform vec4 _ScreenParams; uniform vec4 _ZBufferParams; uniform vec4 unity_OrthoParams; uniform vec4 unity_CameraWorldClipPlanes[6]; uniform mat4 unity_CameraProjection; uniform mat4 unity_CameraInvProjection; uniform vec4 _WorldSpaceLightPos0; uniform vec4 _LightPositionRange; uniform vec4 unity_4LightPosX0; uniform vec4 unity_4LightPosY0; uniform vec4 unity_4LightPosZ0; uniform vec4 unity_4LightAtten0; uniform vec4 unity_LightColor[8]; uniform vec4 unity_LightPosition[8]; uniform vec4 unity_LightAtten[8]; uniform vec4 unity_SpotDirection[8]; uniform vec4 unity_SHAr; uniform vec4 unity_SHAg; uniform vec4 unity_SHAb; uniform vec4 unity_SHBr; uniform vec4 unity_SHBg; uniform vec4 unity_SHBb; uniform vec4 unity_SHC; uniform vec3 unity_LightColor0; uniform vec3 unity_LightColor1; uniform vec3 unity_LightColor2; uniform vec3 unity_LightColor3; uniform vec4 unity_ShadowSplitSpheres[4]; uniform vec4 unity_ShadowSplitSqRadii; uniform vec4 unity_LightShadowBias; uniform vec4 _LightSplitsNear; uniform vec4 _LightSplitsFar; uniform mat4 unity_World2Shadow[4]; uniform vec4 _LightShadowData; uniform vec4 unity_ShadowFadeCenterAndType; uniform mat4 glstate_matrix_mvp; uniform mat4 glstate_matrix_modelview0; uniform mat4 glstate_matrix_invtrans_modelview0; uniform mat4 _Object2World; uniform mat4 _World2Object; uniform vec4 unity_LODFade; uniform vec4 unity_WorldTransformParams; uniform mat4 glstate_matrix_transpose_modelview0; uniform mat4 glstate_matrix_projection; uniform vec4 glstate_lightmodel_ambient; uniform mat4 unity_MatrixV; uniform mat4 unity_MatrixVP; uniform vec4 unity_AmbientSky; uniform vec4 unity_AmbientEquator; uniform vec4 unity_AmbientGround; uniform vec4 unity_FogColor; uniform vec4 unity_FogParams; uniform vec4 unity_LightmapST; uniform vec4 unity_DynamicLightmapST; uniform vec4 unity_SpecCube0_BoxMax; uniform vec4 unity_SpecCube0_BoxMin; uniform vec4 unity_SpecCube0_ProbePosition; uniform vec4 unity_SpecCube0_HDR; uniform vec4 unity_SpecCube1_BoxMax; uniform vec4 unity_SpecCube1_BoxMin; uniform vec4 unity_SpecCube1_ProbePosition; uniform vec4 unity_SpecCube1_HDR; in vec4 in_POSITION0; vec4 t0; void main() { t0 = in_POSITION0.yyyy glstate_matrix_mvp[1]; t0 = glstate_matrix_mvp[0] in_POSITION0.xxxx + t0; t0 = glstate_matrix_mvp[2] in_POSITION0.zzzz + t0; gl_Position = glstate_matrix_mvp[3] in_POSITION0.wwww + t0; return; } -------- failed compiling: vertex shader -------- Shader compilation failed #version 150 #extension GL_ARB_explicit_attrib_location : require #extension GL_ARB_shader_bit_encoding : enable layout(location = 0) out vec4 SV_Target0; void main() { SV_Target0 = vec4(1.0, 0.0, 1.0, 1.0); return; } -------- failed compiling: fragment evaluation shader Note: Creation of internal variant of shader 'Hidden/InternalErrorShader' failed. WARNING: Shader Unsupported: 'Hidden/InternalErrorShader' - Pass '' has no vertex shader WARNING: Shader Unsupported: 'Hidden/InternalErrorShader' - Setting to default shader. -------- Shader compilation failed #version 150 #extension GL_ARB_explicit_attrib_location : require #extension GL_ARB_shader_bit_encoding : enable uniform vec4 _Time; uniform vec4 _SinTime; uniform vec4 _CosTime; uniform vec4 unity_DeltaTime; uniform vec3 _WorldSpaceCameraPos; uniform vec4 _ProjectionParams; uniform vec4 _ScreenParams; uniform vec4 _ZBufferParams; uniform vec4 unity_OrthoParams; uniform vec4 unity_CameraWorldClipPlanes[6]; uniform mat4 unity_CameraProjection; uniform mat4 unity_CameraInvProjection; uniform vec4 _WorldSpaceLightPos0; uniform vec4 _LightPositionRange; uniform vec4 unity_4LightPosX0; uniform vec4 unity_4LightPosY0; uniform vec4 unity_4LightPosZ0; uniform vec4 unity_4LightAtten0; uniform vec4 unity_LightColor[8]; uniform vec4 unity_LightPosition[8]; uniform vec4 unity_LightAtten[8]; uniform vec4 unity_SpotDirection[8]; uniform vec4 unity_SHAr; uniform vec4 unity_SHAg; uniform vec4 unity_SHAb; uniform vec4 unity_SHBr; uniform vec4 unity_SHBg; uniform vec4 unity_SHBb; uniform vec4 unity_SHC; uniform vec3 unity_LightColor0; uniform vec3 unity_LightColor1; uniform vec3 unity_LightColor2; uniform vec3 unity_LightColor3; uniform vec4 unity_ShadowSplitSpheres[4]; uniform vec4 unity_ShadowSplitSqRadii; uniform vec4 unity_LightShadowBias; uniform vec4 _LightSplitsNear; uniform vec4 _LightSplitsFar; uniform mat4 unity_World2Shadow[4]; uniform vec4 _LightShadowData; uniform vec4 unity_ShadowFadeCenterAndType; uniform mat4 glstate_matrix_mvp; uniform mat4 glstate_matrix_modelview0; uniform mat4 glstate_matrix_invtrans_modelview0; uniform mat4 _Object2World; uniform mat4 _World2Object; uniform vec4 unity_LODFade; uniform vec4 unity_WorldTransformParams; uniform mat4 glstate_matrix_transpose_modelview0; uniform mat4 glstate_matrix_projection; uniform vec4 glstate_lightmodel_ambient; uniform mat4 unity_MatrixV; uniform mat4 unity_MatrixVP; uniform vec4 unity_AmbientSky; uniform vec4 unity_AmbientEquator; uniform vec4 unity_AmbientGround; uniform vec4 unity_FogColor; uniform vec4 unity_FogParams; uniform vec4 unity_LightmapST; uniform vec4 unity_DynamicLightmapST; uniform vec4 unity_SpecCube0_BoxMax; uniform vec4 unity_SpecCube0_BoxMin; uniform vec4 unity_SpecCube0_ProbePosition; uniform vec4 unity_SpecCube0_HDR; uniform vec4 unity_SpecCube1_BoxMax; uniform vec4 unity_SpecCube1_BoxMin; uniform vec4 unity_SpecCube1_ProbePosition; uniform vec4 unity_SpecCube1_HDR; uniform vec4 unity_ColorSpaceGrey; uniform vec4 unity_ColorSpaceDouble; uniform vec4 unity_ColorSpaceDielectricSpec; uniform vec4 unity_ColorSpaceLuminance; uniform vec4 unity_Lightmap_HDR; uniform vec4 unity_DynamicLightmap_HDR; uniform vec4 _Color; uniform float _AlphaSplitEnabled; in vec4 in_POSITION0; in vec4 in_COLOR0; in vec2 in_TEXCOORD0; out vec4 vs_COLOR0; out vec2 vs_TEXCOORD0; vec4 t0; void main() { t0 = in_POSITION0.yyyy glstate_matrix_mvp[1]; t0 = glstate_matrix_mvp[0] in_POSITION0.xxxx + t0; t0 = glstate_matrix_mvp[2] in_POSITION0.zzzz + t0; gl_Position = glstate_matrix_mvp[3] in_POSITION0.wwww + t0; vs_COLOR0 = in_COLOR0 _Color; vs_TEXCOORD0.xy = in_TEXCOORD0.xy; return; } -------- failed compiling: vertex shader -------- Shader compilation failed #version 150 #extension GL_ARB_explicit_attrib_location : require #extension GL_ARB_shader_bit_encoding : enable uniform sampler2D _MainTex; in vec4 vs_COLOR0; in vec2 vs_TEXCOORD0; layout(location = 0) out vec4 SV_Target0; vec4 t0; lowp vec4 t10_0; void main() { t10_0 = texture(_MainTex, vs_TEXCOORD0.xy); t0 = t10_0 vs_COLOR0; SV_Target0.xyz = t0.www * t0.xyz; SV_Target0.w = t0.w; return; } -------- failed compiling: fragment evaluation shader Note: Creation of internal variant of shader 'Sprites/Default' failed. PlayerInitEngineGraphics: GPU not supported; OpenGL 3.2 is required. Your GPU (Gallium 0.4 on SVGA3D; build: RELEASE; ) or OpenGL drivers only supports OpenGL 0.0 Failed to initialize player
Same problem here, I tried installing Ubuntu on $$anonymous$$ac OS X without V$$anonymous$$ware but it crashed too. I also tried building an empty unity project, same results :/ I'm afraid it's a bug
edit: using -force-opengl seems to fix it but it also freezes my entire virtual machine
Answer by Jespertheend2 · Jan 25, 2016 at 12:30 AM
I had the same problem but it is now sort of fixed. I actually installed Ubuntu rather than using a virtual machine. The game still crashed but starting it using -force-opengl fixed it. On the virtual machine this also fixed it but instead the entire virtual machine froze.