SFML community forums
General => Feature requests => Topic started by: luiscubal on October 12, 2011, 05:45:58 pm
-
I've been having trouble with intel cards so my game currently has two modes - with rendertextures and without rendertextures.
I can easily toggle on and off the RenderTextures, so I'd like to deactivate them only on Intel cards, since those seem to be the cards with problems.
I'd like SFML(and SFML.Net) to provide a call like "IsIntelGPU" or something like that, so that I could selectively enable some features.
-
I'd like SFML(and SFML.Net) to provide a call like "IsIntelGPU" or something like that, so that I could selectively enable some features.
And then, another function like IsNvidiaCard() or IsAtiCard()? And maybe also a function for the processor and RAM manufacturer? ;)
In my opinion, this is far too specific for SFML. I don't know if it's even possible to check that easily. If it is, there are probably already existing libraries that do that. But anyway, I think we should rather attempt to fix the issues with Intel cards...
-
I think we should rather attempt to fix the issues with Intel cards...
That would be the best way. I just want this feature as a workaround until that happens.
-
It's quite easy to do, even outside SFML. glGetString(GL_VENDOR) should return something containing "Intel". Don't forget to call this function when an OpenGL context is active.
-
Anyway, detect card vendor is mostly a bad practice. You should rely on card capabilities.
Detect the card vendor should be limited to workaround a nasty bug in the driver or some very specific issues like that. You'll go to a maintenance hell if you don't do that.
Just immagine what will happen if the same problem appears with some wideo card that is not from intel, or that intel produce a new videocard where this behaviour isn't anymore ?
-
Unless the Intel RenderTexture bug is fixed, the only alternative is to disable RenderTextures entirely.
So the options are 1) disable RTs everywhere 2) disable RTs on Intel cards only
I think the option is quite clear.
Also, I don't think there's any way to detect this bug at runtime aside from vendor strings.