Fixed function worth supporting?

Started by
14 comments, last by zedz 15 years, 9 months ago
Greetings, I've gotten to the point where I'm about to start coding my "renderer" portion of my engine. I was wondering if fixed function is worth supporting at all at this point or should I focus my efforts on making a shader-only engine? Are there aspects of the fixed-function pipeline that I might need? Can everything be done with shaders? NOTE: I heard all about the "Don't make an engine, make games" philosophy. This engine is more of a coding exercise then anything else. A game may spawn form it at once point.
------------Anything prior to 9am should be illegal.
Advertisement
AFAIK, the entire fixed function pipeline is emulated on modern cards using shaders. The question really is: do you care about hardware that doesn't support shaders?
You make a convincing argument. I didn't realized that all fixed-function stuff was actually replaced with shaders.

What is the percentage of cards that don't support shaders nowadays? And by the time I build a game out of this engine, that percentage will lower, i think. Ergo, I'm leaning more towards not supporting fixed-function.
------------Anything prior to 9am should be illegal.
Directx 8.0 inclueded pixel and vertex shader support. Directx 7 cards have not been produced since 2003, but Directx 8 cards began appearing in early 2001.

http://en.wikipedia.org/wiki/Comparison_of_Nvidia_Graphics_Processing_Units
http://en.wikipedia.org/wiki/Comparison_of_ATI_Graphics_Processing_Units
Not unless you plan on supporting DX7-class GPU's. [smile]
Fixed-function is still much faster on older cards, even ones that "support" PS 2.0 (thinking first-generation hardware). However on modern cards fixed-function can actually be slower. IMHO I think it's a good idea to support fixed-function if you want to target older harder and you're GPU-limited, otherwise just go exclusively with shaders and make simpler versions for slower hardware that doesn't do shadow mapping, bump mapping, soft skinning, etc.
Quote:Original post by RealMarkP
NOTE: I heard all about the "Don't make an engine, make games" philosophy. This engine is more of a coding exercise then anything else. A game may spawn form it at once point.


I'm less than certain that you've heard all about it, given that you fail to address the fundamental linchpin of that philosophy: That by coding a game you gain a much better grasp of what you actually need for a game than otherwise (and by extension, what you actually need for an engine), and that by failing to code a game you're far more prone to writing things that you either do not need, or things that you do need but written in a suboptimal manner, both of which are more of an exercise in poor time management than anything else.

I say this because it's a given that a game may spawn from an engine at some point. But an engine can be spawned from a game as well, and the point is that both the game and the engine will generally be better off for it, because you've properly gathered your requirements, something fundamental to software development.

But, whatever, up to you.
http://steampowered.com/status/survey.html
at the moment <5% users dont have shader support this will only get smaller
so IMO no point in worring about it
Quote:Original post by zedz
http://steampowered.com/status/survey.html
at the moment <5% users dont have shader support this will only get smaller
so IMO no point in worring about it

It's not about whether or not a card supports shaders (namely PS 2.0 and above), but whether it supports them well. An FX 5200 technically supports PS 2.0, however it's horrifically slow. According to the Valve survey, about 15% of the userbase fits into that "slow" category. And a bunch of the cards that default to Shader Model 2.0 (specifically the mobile and express models) aren't so hot either.

At the very least, you should try to support fixed-function for high-fillrate objects (terrain, UI, etc.). It doesn't take that long to add.
For PC or next-gen consoles? Probably not.

For Wii? Definately.

For Gaming Handhelds? Now: yes. Future: who knows.

This topic is closed to new replies.

Advertisement