[Mesa-dev] [Bug 91169] The Chronicles of Riddick: Assault on Dark Athena fails to start with nouveau
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Tue Jun 30 20:39:50 PDT 2015
https://bugs.freedesktop.org/show_bug.cgi?id=91169
Bug ID: 91169
Summary: The Chronicles of Riddick: Assault on Dark Athena
fails to start with nouveau
Product: Mesa
Version: git
Hardware: Other
OS: All
Status: NEW
Keywords: patch
Severity: normal
Priority: medium
Component: Mesa core
Assignee: mesa-dev at lists.freedesktop.org
Reporter: gyebro69 at gmail.com
QA Contact: mesa-dev at lists.freedesktop.org
CC: imirkin at alum.mit.edu
Created attachment 116838
--> https://bugs.freedesktop.org/attachment.cgi?id=116838&action=edit
trace file (unpatched mesa, game fails to start)
The game uses OpenGL and runs fine in Wine with Nvidia binary drivers 340.76.
With nouveau the game crashes on start and pops up an error message something
about:
'CCException.
Location: class CRenderContextGL::GLSL_LoadSrc
Message: OpenGL: no error'
I get the same error message with the software renderer too.
The following proposed patched written by Ilia Mirkin fixes the problem for me,
the game starts, shows the intro videos and menus correctly:
diff --git a/src/glsl/builtin_functions.cpp b/src/glsl/builtin_functions.cpp
index efab299..9c3037b 100644
--- a/src/glsl/builtin_functions.cpp
+++ b/src/glsl/builtin_functions.cpp
@@ -2045,7 +2045,7 @@ builtin_builder::create_builtins()
add_function("texture2D",
_texture(ir_tex, always_available, glsl_type::vec4_type,
glsl_type::sampler2D_type, glsl_type::vec2_type),
- _texture(ir_txb, fs_only, glsl_type::vec4_type,
glsl_type::sampler2D_type, glsl_type::vec2_type),
+ _texture(ir_txb, always_available,
glsl_type::vec4_type, glsl_type::sampler2D_type, glsl_type::vec2_type),
_texture(ir_tex, texture_external, glsl_type::vec4_type,
glsl_type::samplerExternalOES_type, glsl_type::vec2_type),
NULL);
@@ -2096,7 +2096,7 @@ builtin_builder::create_builtins()
add_function("textureCube",
_texture(ir_tex, always_available, glsl_type::vec4_type,
glsl_type::samplerCube_type, glsl_type::vec3_type),
- _texture(ir_txb, fs_only, glsl_type::vec4_type,
glsl_type::samplerCube_type, glsl_type::vec3_type),
+ _texture(ir_txb, always_available,
glsl_type::vec4_type, glsl_type::samplerCube_type, glsl_type::vec3_type),
NULL);
add_function("textureCubeLod",
diff --git a/src/glsl/glsl_parser_extras.cpp b/src/glsl/glsl_parser_extras.cpp
index 046d5d7..6b1a104 100644
--- a/src/glsl/glsl_parser_extras.cpp
+++ b/src/glsl/glsl_parser_extras.cpp
@@ -655,6 +655,8 @@ void _mesa_glsl_extension::set_flags(_mesa_glsl_parse_state
*state,
*/
static const _mesa_glsl_extension *find_extension(const char *name)
{
+ if (strcmp(name, "GL_ATI_shader_texture_lod") == 0)
+ name = "GL_ARB_shader_texture_lod";
for (unsigned i = 0; i < ARRAY_SIZE(_mesa_glsl_supported_extensions); ++i)
{
if (strcmp(name, _mesa_glsl_supported_extensions[i].name) == 0) {
return &_mesa_glsl_supported_extensions[i];
Trace file with patch applied:
https://drive.google.com/open?id=0B-tTbLKBl-tOQUNwWEgtekN6LVE
Fedora 22 32-bit
Mesa 10.6-branchpoint-773-g1de93f9
Kernel 4.0.6-300.fc22.i686+PAE
Xorg 1.17.2
libdrm-2.4.61-3.fc22.i686
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20150701/22827b2a/attachment.html>
More information about the mesa-dev
mailing list