This happens on almost all Intel GMA chipsets, specifically on the Intel G41 X4500 Integrated. Everything in the game renders fine, but the characters are distorted. I have taken screenshots of every error that occurs and they can be seen here: http://imgur.com/9NdIu.png http://imgur.com/0WBJW.png http://imgur.com/mDqYN.png http://imgur.com/Cu5Js.png http://imgur.com/TH10r.png http://imgur.com/ptvHk.png http://imgur.com/Ndeg1.png I am sure that the hardware is capable of performing this task since it works perfectly under Windows (see G41 in the graphics card list: http://spreadsheets.google.com/ccc?key=0ArgkrXPjBdybdDVPQ09QZlhTa3lMS3RFQk9zVnplYmc&hl=en 2nd tab). So far I have seen three other people who had this exact same problem. All with different Linux systems with either a Intel G41 X4500 or a Mobile X4500HD. My system being: Arch Linux x86_64 mesa 7.8.2-3 xf86-video-intel 2.12.0-3 intel-dri 7.8.2-3 This issue is sort of a long-run, but there are plenty of Savage 2 players who would love to see this fixed.
For Savage 2, you really need to upgrade to Mesa 7.9 for the reworked GLSL support. There's however still a few problems with the game (might be hardware specific) tracked in bug 30004.
(In reply to comment #1) > For Savage 2, you really need to upgrade to Mesa 7.9 for the reworked GLSL > support. > > There's however still a few problems with the game (might be hardware specific) > tracked in bug 30004. It seems that mesa just happened to be out-of-date in the official Arch Linux package system. Would this git branch also be suitable? http://aur.archlinux.org/packages.php?ID=19044
Arch Linux's testing repo contains 7.9, if you want to go that route. If you want to use the AUR's -git packages, you'll need intel-dri-git, libgl-git, and possibly mesa-git. Or, you can build the "mesa-full" package from AUR which provides all three.
(In reply to comment #3) > Arch Linux's testing repo contains 7.9, if you want to go that route. > > If you want to use the AUR's -git packages, you'll need intel-dri-git, > libgl-git, and possibly mesa-git. Or, you can build the "mesa-full" package > from AUR which provides all three. Alright everything has been updated to the latest testing versions. The bug is even worse now, while the background world is now much better. http://imgur.com/8UYZy.png It seems this is a code error that a dev has to see and maybe this can get fixed in the next version.
Completely out of coincidence, I have just found something else. If I play Sauerbraten which is an open-source OpenGL game, and when I turn "shaders" on then the exact same effect will happen on the characters! The shaders being on low or high, has no effect on the graphical glitch. Once the shaders are turned off, the game will act normally, thus I can confirm that this bug is caused only by shaders rendered in OpenGL.
Having seen this kind of thing in the past, my guess is it's a bug in the vertex shader's handling of indirect addressing into the constant buffer to get skinning parameters.
(In reply to comment #6) > Having seen this kind of thing in the past, my guess is it's a bug in the > vertex shader's handling of indirect addressing into the constant buffer to get > skinning parameters. Would you say that it is caused by the game's code, or is the problem in the video driver?
(In reply to comment #7) > Would you say that it is caused by the game's code, or is the problem in the > video driver? Savage 2 works (or at least worked) fine with r300g and llvmpipe.
(In reply to comment #8) > (In reply to comment #7) > > Would you say that it is caused by the game's code, or is the problem in the > > video driver? > > Savage 2 works (or at least worked) fine with r300g and llvmpipe. llvmpipe, I can't find must information about it on Google, it seems as a dirver that puts all rendering on the CPU instead of the GPU. How is this driver installed in Arch Linux.
commit 5dc53444c8323c1787dddbe6b67048828df9c684 Author: Eric Anholt <eric@anholt.net> Date: Wed Dec 22 22:46:12 2010 -0800 i965: Correct the dp_read message descriptor setup on g4x. It's mostly like gen4 message descriptor setup, except that the sizes of type/control changed to be like gen5. Fixes 21 piglit cases on gm45, including the regressions in bug #32311 from increased VS constant buffer usage.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.