Am Mittwoch, 6. Mai 2009 10:10:07 schrieb Henri Verbeet:
2009/5/5 Stefan Dösinger stefan@codeweavers.com:
- quirk only enables point sprites on the first texture unit. This
keeps point sprites working in + * most games, but avoids the crash
...and on the other ones it will create hard to diagnose / explain bugs. Just disabling the extension if it's broken also avoids the crash, and will at least have predictable behaviour.
Not in this case. As I explain in a comment in the test, there's no d3d cap flag for point sprites. So the games will just go ahead and try to do the same kind of rendering and just fail in the same or worse way.
The only advantage we get from disabling point sprites altogether is the WARN we get if the game tries to use them. I'll add a similar WARN to the point sprite function if the game uses them and this workaround is active.
I also *still* think us working around AMD's bugs is the wrong approach.
I agree in general, if this was just a rendering bug I'd put the workaround as a hack into CrossOver and be happy. However, we're trying to prevent a kernel panic here, and on the last two Wineconfs we agreed that we should try to prevent kernel panics while running our d3d tests, even if it is ugly(we have similar workarounds for old Mesa glDrawPixels / glReadPixels issues). If the tests crash the systems people will refuse to run them, making them useless.
Of course it would also help if AMD took these kind of things seriously, or at least replied to my posts (http://www.phoronix.com/forums/showpost.php?p=63527&postcount=107).
That specific issue is fixed in 9.4 I think. They confirmed the bug and replied here: http://ati.cchtml.com/show_bug.cgi?id=1462
(unfortunately no 9.4 for <= r500 cards, so we have to keep our workaround in directx.c)