https://bugs.freedesktop.org/show_bug.cgi?id=59521
Priority: medium Bug ID: 59521 Assignee: dri-devel@lists.freedesktop.org Summary: [Serious Sam 3] Missing textures with R600g Severity: normal Classification: Unclassified OS: Linux (All) Reporter: lordheavym@gmail.com Hardware: x86-64 (AMD64) Status: NEW Version: git Component: Drivers/Gallium/r600 Product: Mesa
OpenGL renderer string: Gallium 0.4 on AMD BARTS OpenGL version string: 3.0 Mesa 9.1-devel (git-1cedf78) OpenGL shading language version string: 1.30 Linux archMain 3.7.2-1-ARCH
With recent OpenGL 3.1/glsl 1.40 support, SS3 is now rendering empty textures. Here is the log output:
--8<-- INF: Encoded user ID = 07c6d27b:425ae20b saving roaming config store to 'sharedconfig.vdf' roaming config store 2 saved successfully INF: INF: * Desktop settings... INF: Color depth: 32-bit INF: Desktop resolution: 1920 x 1080 INF: Fullscreen on primary display Mesa: User error: GL_INVALID_ENUM in glGetIntegerv(pname=0x9047) Mesa: User error: GL_INVALID_ENUM in glGetIntegerv(pname=0x87fc) WRN: [OpenGL] Unable to determine VRAM size... assuming 512 MB. Mesa: User error: GL_INVALID_ENUM in glGetIntegerv(pname=0x9048) Mesa: User error: GL_INVALID_ENUM in glGetIntegerv(pname=0x87fc) Mesa: User error: GL_INVALID_OPERATION in unsupported function called (unsupported extension or deprecated function?) INF: INF: Gfx API: OpenGL INF: Resolution: 1920 x 1080 INF: Vendor: ATI (0x1002) INF: Driver: X.Org (0x6738) INF: Renderer: Gallium 0.4 on AMD BARTS INF: Version: 3.0 Mesa 9.1-devel (git-1cedf78) INF: Video memory size: 512 MB INF: Available for textures: 512 MB INF: Active GPU(s): 1 WRN: Display driver is too old, please update it ASAP! INF: INF: Sfx API: OpenAL INF: Device: OpenAL Soft INF: Mixer frequency: 44100 Hz INF: Mixer voices: 64 INF: Max sound sources: 30 INF: Max total volume: 3 INF: Speaker config: (unknown) INF: Environment FX: not supported INF: ERR: OpenGL: API error! (CreateStaticVertexBuffer) INF: AutoDetect: Hardware values unchanged, nothing to do. Installing breakpad exception handler for appid(steam)/version(1358286427_client) Installing breakpad exception handler for appid(steam)/version(1358286427_client) INF: Started simulation on 'Content/SeriousSam3/Levels/Menu/Intro.wld' in 0.53 seconds. Mesa: User error: GL_INVALID_OPERATION in unsupported function called (unsupported extension or deprecated function?) ERR: OpenGL: API error! (NewTextureCanvas, texture-buffer object) Mesa: User error: GL_INVALID_OPERATION in unsupported function called (unsupported extension or deprecated function?) ERR: OpenGL: API error! (NewTextureCanvas, texture-buffer object) Mesa: User error: GL_INVALID_OPERATION in unsupported function called (unsupported extension or deprecated function?) ERR: OpenGL: API error! (NewTextureCanvas, texture-buffer object) Mesa: User error: GL_INVALID_OPERATION in unsupported function called (unsupported extension or deprecated function?) ERR: OpenGL: API error! (NewTextureCanvas, texture-buffer object) INF: Started simulation on 'Content/SeriousSam3/Levels/Menu/MenuLevel.wld' in 0.16 seconds. Mesa: User error: GL_INVALID_OPERATION in unsupported function called (unsupported extension or deprecated function?) ERR: OpenGL: API error! (NewTextureCanvas, texture-buffer object) Mesa: User error: GL_INVALID_OPERATION in unsupported function called (unsupported extension or deprecated function?) ERR: OpenGL: API error! (NewTextureCanvas, texture-buffer object) Mesa: User error: GL_INVALID_OPERATION in unsupported function called (unsupported extension or deprecated function?) ERR: OpenGL: API error! (NewTextureCanvas, texture-buffer object) Mesa: User error: GL_INVALID_OPERATION in unsupported function called (unsupported extension or deprecated function?) ERR: OpenGL: API error! (NewTextureCanvas, texture-buffer object) Mesa: User error: GL_INVALID_OPERATION in unsupported function called (unsupported extension or deprecated function?) Mesa: User error: GL_INVALID_OPERATION in unsupported function called (unsupported extension or deprecated function?) Mesa: User error: GL_INVALID_OPERATION in unsupported function called (unsupported extension or deprecated function?) ERR: OpenGL: API error! (NewTextureCanvas, texture-buffer object) Mesa: User error: GL_INVALID_OPERATION in unsupported function called (unsupported extension or deprecated function?) Game removed: AppID 41070 "Serious Sam 3: BFE", ProcID 19760 saving roaming config store to 'sharedconfig.vdf' roaming config store 2 saved successfully Generating new string page texture 116: 24x256, total string texture memory is 2,42 MB Shutting down. . . unlinked 2 orphaned pipes CAsyncIOManager: 0 threads terminating. 0 reads, 0 writes, 0 deferrals. CAsyncIOManager: 371866 single object sleeps, 598 multi object sleeps CAsyncIOManager: 0 single object alertable sleeps, 2 multi object alertable sleeps -->8--
Steam is launched with MESA_DEBUG=1 and R600_LLVM=0, community support is disabled.
Upstream bug report: steamcommunity.com/app/41070/discussions/0/846942784171341620/
https://bugs.freedesktop.org/show_bug.cgi?id=59521
--- Comment #1 from Alex Deucher agd5f@yahoo.com --- If the game uses compressed textures, make sure you have libtxc-dxtn installed.
https://bugs.freedesktop.org/show_bug.cgi?id=59521
--- Comment #2 from Laurent carlier lordheavym@gmail.com --- Of course, lib32-libtxc_dxtn is installed: $ pacman -Qs lib32-libtxc_dxtn local/lib32-libtxc_dxtn 1.0.1-3 Texture compression library for Mesa (32-bit)
https://bugs.freedesktop.org/show_bug.cgi?id=59521
--- Comment #3 from Laurent carlier lordheavym@gmail.com --- Created attachment 74448 --> https://bugs.freedesktop.org/attachment.cgi?id=74448&action=edit apitrace that produce an error
That trace gives:
apitrace retrace Sam3.1207.trim.trace
1205: glDebugOutputCallback: High severity API error 0, GL_INVALID_OPERATION in unsupported function called (unsupported extension or deprecated function?) 0 1205 glProgramUniform1i(program = 8, location = 65536, v0 = 0) 1205: warning: glGetError(glProgramUniform1i) = GL_INVALID_OPERATION Rendered 0 frames in 0.0703531 secs, average of 0 fps
https://bugs.freedesktop.org/show_bug.cgi?id=59521
--- Comment #4 from Laurent carlier lordheavym@gmail.com --- I've bisected, and it gives me:
Bisecting: 0 revisions left to test after this (roughly 0 steps) [8af7d3ce9fe60d7ab19aa30efc15f9ed97df27ff] mesa: Add extension tracking for {ARB,OES}_get_program_binary
https://bugs.freedesktop.org/show_bug.cgi?id=59521
--- Comment #5 from Laurent carlier lordheavym@gmail.com --- Created attachment 75419 --> https://bugs.freedesktop.org/attachment.cgi?id=75419&action=edit before commit 8af7d3ce9fe60d7ab19aa30efc15f9ed97df27ff
https://bugs.freedesktop.org/show_bug.cgi?id=59521
--- Comment #6 from Laurent carlier lordheavym@gmail.com --- Created attachment 75420 --> https://bugs.freedesktop.org/attachment.cgi?id=75420&action=edit After commit 8af7d3ce9fe60d7ab19aa30efc15f9ed97df27ff
https://bugs.freedesktop.org/show_bug.cgi?id=59521
--- Comment #7 from Laurent carlier lordheavym@gmail.com --- using MESA_EXTENSION_OVERRIDE="-GL_ARB_get_program_binary" make it works properly
https://bugs.freedesktop.org/show_bug.cgi?id=59521
--- Comment #8 from John Bridgman john.bridgman@amd.com --- (In reply to comment #7)
using MESA_EXTENSION_OVERRIDE="-GL_ARB_get_program_binary" make it works properly
Just checking, do you mean "using <over-ride> eliminates the missing textures ?
https://bugs.freedesktop.org/show_bug.cgi?id=59521
--- Comment #9 from John Bridgman john.bridgman@amd.com --- Sorry, hit "save" too soon. Your post on the steam forum suggested that there might be a crash related to use of precompiled shader binaries so I'm wondering if your comment here refers to fixing a crash or fixing the textures.
Thanks...
https://bugs.freedesktop.org/show_bug.cgi?id=59521
--- Comment #10 from Laurent carlier lordheavym@gmail.com --- Probably the crash is related to some cache feature that SS3 uses (it was reproducable when switching between catalyst and mesa).
Overriding GL_ARB_get_program_binary make the game working properly otherwise all the textures are missing.
https://bugs.freedesktop.org/show_bug.cgi?id=59521
--- Comment #11 from John Bridgman john.bridgman@amd.com --- Thanks. First thought is that maybe Mesa is executing precompiled shader programs from Catalyst (you mentioned switching back and forth) but it seems unlikely that would work even enough to be "missing textures" ;)
https://bugs.freedesktop.org/show_bug.cgi?id=59521
Laurent carlier lordheavym@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |NOTOURBUG
--- Comment #12 from Laurent carlier lordheavym@gmail.com --- It seem it was a SS3 bug. Now i can see this in the output log:
WRN: [OpenGL] "GL_ARB_get_program_binary" extension is present but not used because no binary formats are exposed. WRN: [OpenGL] Unable to determine VRAM size... assuming 512 MB.
And now it works without overriding GL_ARB_get_program_binary, so closing.
dri-devel@lists.freedesktop.org