WineD3D: gpu detection
the3dfxdude at gmail.com
Fri Aug 18 18:12:49 CDT 2006
On 8/18/06, Roderick Colenbrander <thunderbird2k at gmx.net> wrote:
> In case of Direct3D each device exports the pci device/vendor ids of the videocard. Lots of programs use these ids to get an idea about the capabilities of the card, enable/disable features based on the detected card or sometimes they are used for evil purposes aswell (working around bugs).
> Compared to the first method which I described which solely relied on the parsing of renderer strings this method is better because it takes into account the opengl capabilities of the videocard. So when a new card is out which isn't in our list, we won't fallback to a very basic card but can still return a 'close match' because of the opengl extension checks.
This patch is a nice idea. Some games query pci ids and do stupid
things with it if it gets one it doesn't recognize. Using fake ids of
a common card will help some. This potentially means that Wine will
have better compatability with older games on newer hardware. For me
this fixes a problem with battlefront under wine where battlefront
sees CARD_WINE and turns everything to low and disables use of
programmable shaders completely. It was very annoying because there
was no way to force shaders back on in the game. I wrote a hack to fix
it, but now I'm glad there is a patch that does this lots better!
More information about the wine-devel