Video Drivers and Game Devs ... how does the relationship work?

Discussion in 'PC Gaming' started by slapnutz, Dec 6, 2008.

  1. slapnutz

    Regular

    Joined:
    Jul 2, 2006
    Messages:
    504
    Likes Received:
    0
    Ok, I'm not a programmer so I'd like clarification on the following. Why is it when certain new games are released, new video drivers also have to be released to fix certain issues?

    The way I see it, when youre making a game, you already have a snapshot of the curent video driver currently released. So wouldnt to design your game to work best with that driver? If people have to update their drivers after a game is released, what does that say about the video manufacturers?

    I mean e.g. the Geforce 8800 series has been out for more than a year and yet driver upgrades are required for newer games? Surely wouldnt Nvidia have worked out all the driver bugs by now or is it the game developers fault? I mean the game devs already had a reference driver to work with so why couldnt they code there game to work properly with that version.

    Just seeing new video drivers for games like, Far Cry 2, Crysis and yes, GTA4 come out a week after the release is a bit weird.

    I mean when GTA4 was being made, Rockstar had access to the current nvidia driver so it was NOT an unknown variable in the equation. So why is it to fix all these "issues", a newer driver is required. Its kinda feels like Nvidia is saying "what! you coded what into your game?! Well, we never planned for our hardware to work well with that code. Looks like we'll have to redo the driver again!"

    Sorry if the above is a rambling mess. Its my crappy simpletons way of asking a technical question.:smile2:
     
  2. Rodéric

    Rodéric a.k.a. Ingenu
    Moderator Veteran

    Joined:
    Feb 6, 2002
    Messages:
    4,031
    Likes Received:
    898
    Location:
    Planet Earth.
    Let's just say that not all devs follow IHV recommendations, and that budgets are sometimes tight.
    Drivers also have bugs (it's rare though), and devs might except those to be fixed before their game gets released. (Noone likes writing work arounds things that should work according to spec, and some might not have the time either. (Budget constraints))

    All in all, drivers are, more often than not, fixing what the devs failed to write correctly.
    That is, new drivers release do not only fix bugs, but fix games to some extent.

    (IMO, the game "industry" is much closer to crafting than to an industrial process.
    Ever heard of state level quality control, like on cars, food, toys or other devices ?)
     
  3. Davros

    Legend

    Joined:
    Jun 7, 2004
    Messages:
    16,158
    Likes Received:
    3,382
    Humus would be the guy to ask he used to be devrel for ati

    ps: shouldnt it be a case of devs write for dx ?
    drivers optimise for dx ?

    my nv drivers have 70 different optimiseations and thats just games begining with the letter A - rediculous if you ask me....
     
    #3 Davros, Dec 6, 2008
    Last edited by a moderator: Dec 6, 2008
  4. psorcerer

    Regular

    Joined:
    Aug 9, 2004
    Messages:
    732
    Likes Received:
    134
    Because the drivers really are full of bugs and undefined behavior. If your publisher is big enough and/or you're a well known developer the bug reports that you file to IHVs really get fixed. If not - you're on your own writing workarounds and separate code paths.

    Because some of the workarounds are either painful or just impossible to make. And because the bug is not known till somebody writes a code that reproduces it, and that can happen really late in the development cycle.

    It tells that they're well over their head supporting so much HW configurations.
     
  5. Davros

    Legend

    Joined:
    Jun 7, 2004
    Messages:
    16,158
    Likes Received:
    3,382

    I Dissagree - IHv's have 2 things to support directx + opengl
     
  6. psorcerer

    Regular

    Joined:
    Aug 9, 2004
    Messages:
    732
    Likes Received:
    134
    They both have a line of hardware, sometimes very different hardware, they need to support with one driver.
    Needless to say that API abstraction is very far from actual hardware operation (even for DX10).
     
  7. digitalwanderer

    digitalwanderer Dangerously Mirthful
    Legend

    Joined:
    Feb 19, 2002
    Messages:
    17,853
    Likes Received:
    2,353
    Location:
    Winfield, IN USA
    They meet in secret, only on hallowed ground in the forgotten places of power. If you don't know the handshake and have the sacred garments don't EVEN ask!
     
  8. bitwise xor

    Newcomer

    Joined:
    Jun 26, 2004
    Messages:
    202
    Likes Received:
    3
    So what's the big problem here? Are the apis/drivers too lenient when, I don't know, the hardware should be throwing exceptions or the apis failing hard when used incorrectly? Do we need to make gpus first class processors and get rid of all this software abstraction and libraries from the ihvs plate thats trying to be the optimal solution for 50,000 games at once?

    How does it get fixed or made better?
     
  9. psorcerer

    Regular

    Joined:
    Aug 9, 2004
    Messages:
    732
    Likes Received:
    134
    How does it get fixed or made better?

    There is a bug per every 25 lines of C, C++ code in commercial software. This is the reality, it cannot be changed.
     
  10. Davros

    Legend

    Joined:
    Jun 7, 2004
    Messages:
    16,158
    Likes Received:
    3,382
    of course it can its called debugging
     
  11. Bludd

    Bludd Experiencing A Significant Gravitas Shortfall
    Veteran

    Joined:
    Oct 26, 2003
    Messages:
    3,434
    Likes Received:
    1,013
    Location:
    Funny, It Worked Last Time...
    There will be errors in code. It's not cost efficient to have to debug everything to a state of 0 faults. You try to write the correct code the first time around, and try to have good fault classification and identification techniques so you can prioritize faults to correct. Since graphics drivers are not safety-critical software as is for example the control system of a nuclear reactor, the devs will not refrain from adding features and new bits to the code. In safety-critical software, you don't really want to do anything new to the code unless you can prove and verify the code and test it exhaustively.

    We can start to go into the whole CS nomenclature of faults and user-observable errors and hazards and things if you want to.
     
  12. Davros

    Legend

    Joined:
    Jun 7, 2004
    Messages:
    16,158
    Likes Received:
    3,382
    suprisingly i'd rather not ;)
     
  13. Neb

    Neb Iron "BEAST" Man
    Legend

    Joined:
    Mar 16, 2007
    Messages:
    8,391
    Likes Received:
    3
    Location:
    NGC2264
    Brigade gather around the table to discuss a solution to this problem. I propose a paypal money pool that will be used to feed the devs that gives results with donuts,chocolate, candy and energy drinks. For compliance wiht health rules baskets of the 'The worlds wonderful fruits' will be sent to them aswell as veg drinks.
     
  14. _xxx_

    Banned

    Joined:
    Aug 3, 2004
    Messages:
    5,008
    Likes Received:
    86
    Location:
    Stuttgart, Germany
    Try weed instead, might work better :yep2:
     
  15. Spyroviper

    Newcomer

    Joined:
    Nov 28, 2008
    Messages:
    6
    Likes Received:
    0
    When I used to work at a game company we used the latest drivers to test the game as ATI/Nvidia didn't provide us with testing/prototype drivers.
     
  16. 2008 IQ is unacceptable

    Banned

    Joined:
    Sep 13, 2008
    Messages:
    262
    Likes Received:
    0
    I have a relevant question. Why did 3dfx get by perfectly with like no more than 2 driver releases per chipset? The drivers included with my long-gone Diamond Monster 3D II 8 MB back in may 98 were perfect for every game that was compatible with the voodoo2.
     
  17. _xxx_

    Banned

    Joined:
    Aug 3, 2004
    Messages:
    5,008
    Likes Received:
    86
    Location:
    Stuttgart, Germany
    They didn't, it's just that you played too few games and missed all the drivers releases. They also had about a monthly cycle. Glide games were never a problem, but they had huge issues with D3D and OGL, actually they never made it to implement a full-featured fully functioning driver for either of these.
     
  18. 2008 IQ is unacceptable

    Banned

    Joined:
    Sep 13, 2008
    Messages:
    262
    Likes Received:
    0
    Coming to think of it most games I played were glide.

    Although, I don't know that a fully featured opengl driver was necessary when they had minigl. One issue I didhave,but don't know if it was driver related was glquake's water always looked like shit. I tried the r_wateralpha (or something like that) up to 7 and it didn't do any good.
     
  19. _xxx_

    Banned

    Joined:
    Aug 3, 2004
    Messages:
    5,008
    Likes Received:
    86
    Location:
    Stuttgart, Germany
    The mini GL was as the name says not a full OGL implementation and couldn't do many things required in full OGL. And since many games did start using more than what mini-GL (or the 3dfx hardware itself) could support, there were many many problems with those drivers.
     
  20. Blazkowicz

    Legend Veteran

    Joined:
    Dec 24, 2004
    Messages:
    5,607
    Likes Received:
    256
    I got my first voodoo2 late in the game (year 2000), never had a problem with D3D. Max Payne was especially nice on V2 SLI (that's how far these cards could run games). But, and it's a big but, no support for D3D 8 and D3D 9, as by design microsoft only allows 2D/3D cards. Thus an inferior Banshee can run stuff like ut2k3 and gta vice city but not the voodoo2!

    on the opengl side, by that side I had the 3dfx ICD, but I used the wickedGL implemenatation anyway, best for running quake3 powered games. the miniGL still gets used (even on voodoo5) for counterstrike 1.5

    2008 IQ you're doing it wrong for quake water. you have to do r_novis 1, then r_wateralpha below 1 ; around .6 is a good value.
    well maybe you didn't speak about this feature that makes water transparent! off course quake water looks like shit. It wouldn't be out of place in a toilet bowl.
     
Loading...

Share This Page

  • About Us

    Beyond3D has been around for over a decade and prides itself on being the best place on the web for in-depth, technically-driven discussion and analysis of 3D graphics hardware. If you love pixels and transistors, you've come to the right place!

    Beyond3D is proudly published by GPU Tools Ltd.
Loading...