Jump to content
  • Advertisement
Sign in to follow this  
Daivuk

Shaders 2.0, Disabling Programing

This topic is 4808 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi, Im here with an issu for EA games and some others that dont know how to disable pixel shaders 2.0 if the card can not support it. For example, you have an NVIDIA GeForce4 Ti 4400 (that can run doom3 very smoothly at high detail) But your pixel shader version is : PixelShader version: 1.3 VertexShader version: 1.1 For most of the recent game : Battle Field 2, Vietcong2, etc. You can not run it if your shaders version are less than 2.0. But the game could probably run very fast on a gf4 ti. Faster than on a nvidia 6200. So, for those from ea games that dont know how to do this, here is the code example to achieve this using GLSL (probably similar with HLSL) :
// If we enable pixel shader 2.0 in the game (if not, try using a older version or just disable it)
bool enableShading20 = true;  // <--- Use this to see if you have to render using shaders or not

// Create a shader object (GLSL is 2.0 or nothing)
fragment_shader = glCreateShaderObjectARB(GL_FRAGMENT_SHADER_ARB);

// Check if it have been initiated correctly
if (!fragment_shader) 
{
    enableShading20 = false;
    return 0;
}

So what, 4 or 5 lines of code?!?!?! If I can do it, they can do it. And probably there is a simpler code than this (since i'm not a shader expert) So WHY ea games and others can not achieve this?? Let me think... marketing? I'm very sick of it. I think I probably need to give my CV to them, they need better programers.

Share this post


Link to post
Share on other sites
Advertisement
"marketing", or perhaps creating fallbacks for all their 2.0 shaders, creating assets that look good without 2.0 shaders, creating alternative implementation of visual effects that would normally be available on modern hardware.

Should you support fixed function, should you support software rasterazing,...
It's about settings a line somewhere, and for them, this is probably where it made sense to set that line. These games wouldn't run too well on older hardware anyway.

And yes, in a way it "marketing". The games industry is a very hard industry, and economics is everything. At least don't blame the developers.

Share this post


Link to post
Share on other sites
As c2_0 indicated, there's probably a lot more than simple technical considerations that go into such decisions.

If they widen the officially supported hardware list then they will have to provide support to all those extra users. I can't speak for them, but it is possible that something like this tipped the balance - means that it just isn't cost-effective to do such a thing.

hth
Jack

Share this post


Link to post
Share on other sites
Quote:
Original post by c2_0
At least don't blame the developers.


Thats was sarcastic ;)
I know its not the fault of the programer.
Its only marketing, and its that that I deplore...

But good point jollyjeffers for they have less support to do..
anyway.

Share this post


Link to post
Share on other sites
Quote:
These games wouldn't run too well on older hardware anyway.


Bull. After applying some 3rd party patch for BF2, it ran fine on my AMD 1.1Ghz here at work with its MX440. Sure, it didn't look AWESOME but it was perfectly playable, and a fan of BF wouldn't have minded at all (i.e. the guy sat next to me!) :)

Share this post


Link to post
Share on other sites
Hey, you can run it on a MX440 ????
How you did that.
I want to run it with my ti4400.
Is this patch is legal?
Do you can play online with it?

thanks

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!