SFML community forums
Help => Graphics => Topic started by: awsumpwner27 on December 30, 2012, 08:56:14 am
-
I checked out the examples, and I was disappointed to find out that the Shader example didn't work. I updated my graphics driver, hoping that it would make a difference, but it didn't. I got this computer about 4 years ago, and apparently I'm using a "Intel(R) G33/G31 Express Chipset Family" graphics card. Also, the driver update I got was about 3 years old. :|
So, what are my options?
-
If sf::Shader::isAvailable() returns false, then there's probably nothing you can do.
-
It depends on the OpenGL version supported by your GPU, if it uses a version lower than OGL 2 then you can't do much about it since it was from that version that GLSL has created and therefore supported. sf::Shader::isAvailable() probably returns either true or false according to you OGL version.
http://en.wikipedia.org/wiki/GLSL (http://en.wikipedia.org/wiki/GLSL)
-
sf::Shader::isAvailable() probably returns either true or false according to you OGL version.
Not exactly, it checks the corresponding extensions.
-
Well, how bad of an idea would it be if I implemented shader-like effects without the Shader? I imagine it being slow since it wouldn't be able to use the GPU.
-
You mean, downloading the intermediate rendering to a pixel array in RAM, applying the "shader" manually pixel per pixel, and then uploading the result back to a texture and displaying it with a sprite? That would be incredibly slow :)
-
I figured.
Well, thank you for the info.
-
Maybe you can update or get a new machine?
It'll be worth it.
-
Getting a new computer is a possibility that isn't favorable enough to depend on. I don't nearly have the money to afford it.
-
What effect do you have in mind?
Maybe shaders are not the only option to achieve it.
-
What hardware are you on, out of curiosity? Shaders not being supported suggests it's extremely old hardware or extremely outdated drivers.