Any reason not to use shaders?

Started by
4 comments, last by Spoonbender 17 years, 10 months ago
Hi all, Shaders have caught my curiosity, and they seem like they can do anything. I've seen many advanced shaders, but I've also seen some other ones that kind of caught my attention. Simple vertex shaders, and shaders to do texture wrapping and that sort of thing. So is there any reason not to use shaders? I mean, would it be better to build in the functionality using say OpenGL to do the texture mapping of a model, or would it be better to just include the functionality to load up a shader file and use the shader file. What are the costs and benefits of each approach(assuming you're equally proficient in OpenGL as Shader programming)? Thanks for any clarification.
I ask for help and you give me a book? I hate book. Book is stupid.Also known as Yellow at the Dark Basic forums.
Advertisement
Shaders are very expensive computationally, and you'll have to worry about whether a certain videocard supports a certain level of shader maturity. Even today, a majority of machines shipped do so without pixel or vertex shader support.

Other than that, you might as well go ahead with it.
Okay, thanks Ravuya.

:)
I ask for help and you give me a book? I hate book. Book is stupid.Also known as Yellow at the Dark Basic forums.
Well my initial response would be to go with shaders. Although its true that not every card supports them, eventually they will. However if you want to port your code to say PDA or mobile devices it may still be a while before shaders are supported at all.
So my suggestion is have your code support both. This may sound bad but in the end all it means is that you program the non shader functionality code then add the possibility for objects to have an attached shader that overrides the rest.

-CProgrammer
Thanks CProgrammer, modular code is the way to go.
I ask for help and you give me a book? I hate book. Book is stupid.Also known as Yellow at the Dark Basic forums.
Depends on what kind of systems you're targeting. Modern graphics cards emulate the fixed function pipeline through shaders, so in those cases, there's absolutely no reason not to use shaders.

If you're targetting casual gamers using an ancient integrated Intel gpu, it might be a problem. Or if you want the game to run on a PDA...

This topic is closed to new replies.

Advertisement