Due to how different video card manufacturers handle OpenGL (especially with regards to the presence of multiple video cards in the system), I am having to write some code that handles OpenGL based on the particular type of video card(s) that it will make use of in my game engine.
Generally speaking, nVidia and ATI/AMD are the only manufacturers of "true" video cards if I am correct? I know motherboards, laptops and such often have their own built in "fake" video cards (I'm assuming I won't have any problems with those since there is only one(?) of them anyway), so if nVidia and ATI/AMD are all that I need to worry about aside from that, then this should be relatively easy.
I can't think of any other video card manufacturers than nVidia and ATI/AMD off the top of my head.
Is there a list of possible values for glGetString GL_RENDERER and GL_VENDOR, or does OpenGL retrieve this information from somewhere else?
I have three ATI/AMD video cards hooked up to this system. Initialization of my game engine currently logs the following:
0056 Querying OpenGL version information...0057 Renderer: ATI Radeon HD 45500058 Vendor: ATI Technologies Inc.0059 Version: 3.3.10317 Compatibility Profile Context
When I initialize my game engine on my laptop, I get this:
0048 Querying OpenGL version information...0049 Renderer: Intel Cantiga0050 Vendor: Intel0051 Version: 2.0.0 - Build 7.15.10.1829
This is what I mean by "fake" video cards (I'm sure there is a technically correct term for this).
So basically speaking, I need to know if there are any other considerations I need to take into account aside from nVidia and ATI/AMD's differing support for OpenGL, which is under the assumption that there are no any other types of "true" video card manufacturers aside from them.
Also, is it correct that you can't mix multiple video cards from nVidia and ATI/AMD in a system? If so, does this also extend to the video cards' model, series or GPU?
Any feedback would be appreciated.
Thanks,
- Sig