I'm having the same problem, exact same set of AMD Graphics cards. When you guys go to update the drivers you may get a failure message. You have to uninstall the 2010 C++ the comes with windows 7. The C++ version that comes with the drivers will then fully install. After all that, my drivers are up to date now and still, the game is crashing. Here's a copy of my log:
Creating lipsync module
--------------------------------------------------------
Initializing Resources Module
--------------------------------------------------------
Creating loader handlers
Creating resource managers
Adding loaders to handlers
--------------------------------------------------------
Initializing Graphics Module
--------------------------------------------------------
Init lowlevel graphics: -1x-1 bpp:32 rr: 60 fs:0 ms:0 driver: 0 cap:'SOMA Loading...' pos
-1x-1)
Available drivers:
(0) - 'windows'
(1) - 'dummy'
Creating window: (-1,-1) 1920 x 1080 - 32 bpp flags: 3
Setting display mode: 1920 x 1080 - 32 bpp 60 hz
Init Glew...OK
Setting up OpenGL
Vendor: ATI Technologies Inc.
Renderer: AMD (ATI) FirePro M8900 (FireGL) Mobility Pro Graphics
Version: 4.1.10792 Compatibility Profile Context FireGL
Max texture image units: 16
Max texture coord units: 16
Max texture buffer size: 268435456
Max texture array slices: 8192
Max user clip planes: 8
Two sided stencil: 1
Vertex Buffer Object: 1
Anisotropic filtering: 1
Max Anisotropic degree: 16
Multisampling: 1
Texture compression: 1
Texture compression S3TC: 1
Texture compression 3DC: 1
Texture sRGB: 1
Geometry Instancing: 1
Auto generate MipMaps: 1
Render to texture: 1
Max draw buffers: 8
Max color render targets: 8
Packed depth-stencil: 1
Texture float: 1
GLSL Version: 4.10
ShaderModel 2: 1
ShaderModel 3: 1
ShaderModel 4: 1
Max vertex uniforms: 16384
Max fragment uniforms: 16384
OGL ATIFragmentShader: 1
Tesselation: 1
MultiBindTex: 0
ERROR: Failed to compile GLSL shader ''!
Shader code:
-------------------
[0001] #version 330
[0002] #extension GL_ARB_explicit_attrib_location : enable
[0003] #extension GL_ARB_uniform_buffer_object : enable
[0004] #extension GL_ARB_shading_language_420pack: enable
[0005] ////////////////////////////////////////////////////////
[0006] // Deferred Skybox - Fragment Shader
[0007] //
[0008] // samples a cubemap skybox
[0009] ////////////////////////////////////////////////////////
[0010]
[0011]
[0012]
[0013] layout(binding = 0) uniform samplerCube aSkyMap;
[0014]
[0015] in vec4 px_vPosition;
[0016] in vec4 px_vTexCoord0;
[0017] in vec4 px_vColor;
[0018] layout(location = 0) out vec4 out_vColor;
[0019]
[0020] void main()
[0021] {
[0022] vec4 px_vPosition = gl_FragCoord;
[0023] bool px_bFrontFacing = gl_FrontFacing;
[0024] int px_lPrimitiveID = gl_PrimitiveID;
[0025]
[0026]
[0027] vec4 vFinalColor;
[0028]
[0029] ////////////////////
[0030] //Diffuse
[0031] vFinalColor = texture(aSkyMap, px_vTexCoord0.xyz);
[0032]
[0033] //Convert color to linear space if needed
[0034]
[0035] vFinalColor.rgb = pow(vFinalColor.rgb, vec3(2.2));
[0036]
[0037]
[0038]
[0039] // Multiply with 8.0 to increase precision
---------------------
Compile log:
---------------------
Fragment shader failed to compile with the following errors:
WARNING: 0:4: warning(#62) enable/warn/disable extension isn't found, extension 'GL_ARB_shading_language_420pack' is not supported
ERROR: 0:13: error(#279) Invalid layout qualifier 'binding'
ERROR: error(#273) 1 compilation errors. No code generated
---------------------
ERROR: Failed to compile GLSL shader ''!
Shader code:
-------------------
[0001] #version 330
[0002] #extension GL_ARB_explicit_attrib_location : enable
[0003] #extension GL_ARB_uniform_buffer_object : enable
[0004] #extension GL_ARB_shading_language_420pack: enable
[0005] ////////////////////////////////////////////////////////
[0006] // Heat map a greyscale value
[0007] //
[0008] // A basic fragment with little fancy stuff.
[0009] ////////////////////////////////////////////////////////
[0010]
[0011] //////////////
[0012] // TEXTURES
[0013] layout(binding = 0) uniform sampler2D aComplexityMap;
[0014] layout(binding = 1) uniform sampler2D aSceneMap;
[0015]
[0016] in vec4 px_vPosition;
[0017] in vec4 px_vTexCoord0;
[0018] layout(location = 0) out vec4 out_vColor;
[0019]
[0020] void main()
[0021] {
[0022] vec4 px_vPosition = gl_FragCoord;
[0023] bool px_bFrontFacing = gl_FrontFacing;
[0024] int px_lPrimitiveID = gl_PrimitiveID;
[0025]
[0026]
[0027] float fComplexity = texture(aComplexityMap, px_vTexCoord0.xy).x;
[0028] vec4 vColor = texture(aSceneMap, px_vTexCoord0.xy);
[0029]
[0030] vec4 vFinalColor = vec4(0,0,0,0.5);
[0031]
[0032] if(fComplexity > 1e-4f)
[0033] {
[0034] /////////////
[0035] // Fade from green to red, where green is good and red is bad
[0036] vFinalColor = mix(vec4(0,1,0,0), vec4(1, 0, 0, 0), min(1, fComplexity));
[0037]
[0038] float fLength = length(vFinalColor);
[0039] vFinalColor /= fLength;
[0040]
[0041] vFinalColor = vFinalColor * vFinalColor;
[0042] vFinalColor *= 8.0f;
[0043]
[0044] vFinalColor.a = 0.1 + fComplexity * 0.75f;
[0045] }
[0046]
---------------------
Compile log:
---------------------
Fragment shader failed to compile with the following errors:
WARNING: 0:4: warning(#62) enable/warn/disable extension isn't found, extension 'GL_ARB_shading_language_420pack' is not supported
ERROR: 0:13: error(#279) Invalid layout qualifier 'binding'
ERROR: 0:14: error(#279) Invalid layout qualifier 'binding'
ERROR: error(#273) 2 compilation errors. No code generated
---------------------
ERROR: Failed to compile GLSL shader ''!
Shader code:
-------------------
[0001] #version 330
[0002] #extension GL_ARB_explicit_attrib_location : enable
[0003] #extension GL_ARB_uniform_buffer_object : enable
[0004] #extension GL_ARB_shading_language_420pack: enable
[0005] ////////////////////////////////////////////////////////
[0006] // Deferred Light Box - Fragment Shader
[0007] //
[0008] // Fragment program to draw a light box.
[0009] ////////////////////////////////////////////////////////
[0010]
[0011]
[0012]
[0013]
[0014]
[0015] // BACKWARD COMBATABLITY FOR NOW
[0016]
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
[0027]
[0028]
[0029]
[0030]
[0031]
[0032]
[0033]
[0034]
[0035]
[0036]
[0037]
[0038]
[0039]
[0040]
[0041]
[0042]
[0043]
[0044]
[0045]
[0046]
[0047] ////////////////////
[0048] //Textures
[0049] layout(binding = 0) uniform sampler2D aDiffuseMap;
[0050] layout(binding = 1) uniform sampler2D aNormalMap;
[0051] layout(binding = 2) uniform sampler2D aSpecularMap;
[0052]
[0053] ////////////////////
[0054] //Uniform varaibles
[0055] uniform vec3 avAmbientColorSky;
[0056] uniform vec3 avAmbientColorGround;
[0057]
[0058] uniform vec4 avScreenToFarPlane;
[0059] uniform float afNegFarPlane;
[0060] uniform vec2 avInvScreenSize;
[0061]
[0062] uniform vec3 avBoxCenter;
[0063] uniform vec3 avBoxExtent;
[0064] uniform float afFalloff;
[0065] uniform float afBevel;
[0066] uniform float afWeight;
[0067]
[0068] uniform vec3 avViewSpaceUp;
[0069]
[0070] uniform mat4 a_mtxInvView;
[0071] uniform vec3 avBand[9];
[0072]
[0073]
[0074] uniform vec4 avFogColor;
[0075]
[0076]
[0077]
[0078]
[0079] in vec4 px_vPosition;
[0080] in vec4 px_vTexCoord0;
[0081] layout(location = 0) out vec4 out_vColor;
[0082]
[0083] void main()
[0084] {
[0085] vec4 px_vPosition = gl_FragCoord;
[0086] bool px_bFrontFacing = gl_FrontFacing;
[0087] int px_lPrimitiveID = gl_PrimitiveID;
[0088]
[0089]
[0090] vec2 vMapCoords = px_vPosition.xy * avInvScreenSize;
[0091] vec4 vColorVal = texture(aDiffuseMap, vMapCoords);
[0092] vec4 vNormalVal = texture(aNormalMap, vMapCoords);
[0093]
[0094]
[0095] float fDepth = vNormalVal.w;
[0096] vec3 vPos = vec3(px_vPosition.xy * avScreenToFarPlane.xy + avScreenToFarPlane.zw, afNegFarPlane) * fDepth;
[0097] vec3 vWorldView = ((a_mtxInvView) * (vec4(vPos, 0.0))).xyz;
[0098] vec3 vBox = (avBoxCenter - vWorldView) / avBoxExtent;
[0099]
[0100] //Convert color to linear space if needed
[0101]
[0102]
[0103] /////////////////////////////////
[0104] //Unpack normal and normalize (if needed)
[0105] vec3 vNormal = vNormalVal.xyz;
[0106]
[0107] ///////////////////////////////
[0108] // Calculate color, multiply with 8.0 to increase precision
[0109] float fUpAmount = dot( avViewSpaceUp, vNormal.xyz)*0.5 + 0.5;
[0110] vec3 vLightColor = mix(avAmbientColorGround, avAmbientColorSky, fUpAmount);
[0111]
[0112]
[0113] out_vColor.xyz = vColorVal.xyz * vLightColor * 8.0;
[0114]
[0115]
[0116] out_vColor.xyz *= avFogColor.xyz;
[0117]
[0118]
[0119]
[0120]
[0121] ////////////////
[0122] // Falloff
[0123] vBox = abs(vBox);
[0124]
[0125] //////////////
[0126] // Get the spherical and box falloff
[0127] float fSphereFalloff = length(vBox);
[0128]
[0129] vBox = max(vec3(0.0), vec3(1.0) - vBox);
[0130] vec3 vBoxFalloff = vec3(1.0) / vBox;
[0131] float fBoxFalloff = sqrt(1.0 / (vBoxFalloff.x + vBoxFalloff.y + vBoxFalloff.y));
[0132] float fCutoff = min(min(vBox.x, vBox.y), vBox.z);
[0133]
[0134] //////////
[0135] // Perform smoothstep and add spherical and box togehter
[0136] float fBevel = sqrt(mix(3.0, 1.0, afBevel));
[0137] vec3 vFalloff = smoothstep(vec3(0.0, 0.0, fBevel),
[0138] vec3(1.0, 0.125, 0.0), vec3(fBoxFalloff, fCutoff, fSphereFalloff));
[0139] vFalloff.xz *= vFalloff.xz;
[0140]
[0141] float fWeight = vFalloff.x * vFalloff.y * vFalloff.z;
[0142] float fFalloff = pow(fWeight, afFalloff+1e-5f) * afWeight;
[0143]
[0144]
[0145] out_vColor.xyz *= fFalloff * fFalloff;
[0146] out_vColor.w = fFalloff;
[0147]
[0148]
[0149]
[0150] }
[0151]
---------------------
Compile log:
---------------------
Fragment shader failed to compile with the following errors:
WARNING: 0:4: warning(#62) enable/warn/disable extension isn't found, extension 'GL_ARB_shading_language_420pack' is not supported
ERROR: 0:49: error(#279) Invalid layout qualifier 'binding'
ERROR: 0:50: error(#279) Invalid layout qualifier 'binding'
ERROR: 0:51: error(#279) Invalid layout qualifier 'binding'
ERROR: error(#273) 3 compilation errors. No code generated
---------------------
ERROR: Failed to compile GLSL shader ''!
Shader code: