Jump to content

WARNING: CMBB and the 42.86 nVidia Drivers do not get along


WWB

Recommended Posts

  • 2 weeks later...

Yeah, I am getting the same problem with the new drivers and WindozeXP. The game slows to a crrrraaaawwwlll.

Anyone fixed this yet? I am pretty tired of all this driver installation/ uninstallation-makes me wish I had bought CMBB for my Mac.

Link to comment
Share on other sites

Le me make a few points here real quick.

CMBB and CMBO are probably the only games in existance which follow TO THE LETTER the requirements of DirectDraw in the way they handle graphics and all function calls.

Charles is adament about not breaking those rules. That means that when video drivers DO break the rules, which they always do in order to improve performace, issues usually crop up in our game. Such is the problem with FSAA and the latest Nvidia drivers.

Also remember that many games are OpenGL based now so you can't compare them with CM.

Now, with the radical slowness you are seeing, I have encountered that too, I *think* that it appears to be a conflict with remnants of older 30.xx based drivers that are not removed when you upgrade to the newer drivers.

A good way to test this out is to completely purge your system of any video drivers, install the Standard VGA driver and then apply the newer 40.xx drivers and see if the slowdown continues.

I wanted to do this myself but havent had time.

I have been reading that these latest batch of beta drivers from Nvidia are really focusing on advanced features for the new GeForce FX line of cards but have really sloppy DirectDraw support. That would also explain the slowdowns. Remember though, these are BETA DRIVERS so use at your own risk.

Most benchmarks I have still show 30.82 and 30.97 to be the most stable and best performing so you really aren't sacrificing anythin by using those older drivers.

Madmatt

[ March 03, 2003, 03:11 PM: Message edited by: Madmatt ]

Link to comment
Share on other sites

Originally posted by Madmatt:

A good way to test this out is to completely purge your system of any video drivers, install the Standard VGA driver and then apply the newer 40.xx drivers and see if the slowdown continues.

I wanted to do this myself but havent had time.

I did this, actually, and did still see the slowdown. (I was installing everything on a new drive, had the inviso-text problem, remembered I needed newer drivers, downloaded them, removed the existing drives, installed the new, and had the slowdown.)
Link to comment
Share on other sites

I second the reccomendation of the 30.8xs as the best fecking nVidia drivers known to man. But I am fairly certain my install of the 42s was not botched--I did go back to the SVGA driver and I was installing over the 41.09s anyhow.

Bottom line--stick with the 30.8xs until they come up with something better, probably in late 2004.

WWB

Link to comment
Share on other sites

Matt:

I appreciate the technically "pure" approach that you are taking with the drivers issue, but ask that you reflect a bit on the dissonance between the implied strategy behind a technically pure approach (e.g., "ensure the highest degree of compatability between our software and the population of users and their systems"...and the reality of what it has incurred - CMBB/CMBO users have to make a choice between running (and ultimately buying future versions) of your software and running the most up to date drivers for their machine.

Sooner or later, your approach MAY force customers to make a choice, and as wonderful as your products are (and they truly are!), making a choice between running CMBB and having all the rest of my games run with better performance, becomes a scenario that BFC may not win all or most times.....

Perhaps a little less technical purity and a little more pragmatism is in order.....

Respectfully,

Gregg

Link to comment
Share on other sites

The 'pragmatisim' you suggest is unrealistic, especially for a small developer. The NVidia drivers are doing something wrong; it is as simple as that. Trying to program around every bug present in the vast selection of video drivers out there is highly unrealistic. Also some of the 'performance gains' you think you're getting with the newer drivers are generally quite minor (especially if you compare them to the quality of the images you are getting with some of these 'performance improvements').

NVidia and ATI are both releasing (beta & official) drivers with a high frequency nowadays. There are going to be advantages and disadvantages to each of these releases. Even the 'official' releases are going to have problems. Some betas fix problems while others 'break' some API routines. Some official drivers work great, while others aren't necessarily the most compatible driver released (some betas are better on occasion).

The DirectX API calls that CM makes are clean - and necessary for some of the screens to display properly (and I don't think they're that esoteric either, even if they're not commonly used by other games out there). Unfortunately graphic corruption can result with some of the improvements that the video driver developers 'try out' - something that happens to CM more often than other games (there is quite a bit more text in CM than most games and it tends to be small). The frequency, type and order of the DirectX API calls is probably unlike most games out there (but that's probably true of any unique 3D engine out there0. Making wholesale changes to the interface and graphics in order to accomodate the 'latest and greatest' video driver is probably not the best idea (and even such changes may not 'fix' the issue).

If you are intent on upgrading your drivers everytime a new version comes out you are bound to run into problems at one time or another. Admittedly this is a bit of a problem when the latest 'family' driver is necessary for the newest graphic chip.

Anyway, I'm under the impression that the next engine will use the OpenGL graphic API, which is a significantly different experience compared to DirectX. Some current video features work only under DirectX, while others work only under OpenGL - or at least operate quite differently.

[ March 04, 2003, 04:29 PM: Message edited by: Schrullenhaft ]

Link to comment
Share on other sites

With all due respect....bull feathers....

I could possibly buy into the approach that all the other game developers & nVidia driver developers are wrong, and BFC is the only party that is right, if BFC could point out specifically where the drivers are going wrong and what is causing this marked slowdown (not to mention the vanishing text issue under anti-aliasing).

Unless and until BFC can establish precisely what is going wrong and how their approach is the correct one (versus that of the nVidia driver develoipers themselves}, I will have to continue to maintain that from both a pragmatic AND an empirical standpoint, they would be better served by bending their approach a bit.

Mind you, I really don't want to be perceived as a malcontent here - BFC produces by far THE best computer wargames....but having said that - they, like all other humans are not infallible, and I would go so far as to suggest (point out?) that their core competencies are in the design of the wargames themselves, not necessarily with the ins and outs of DirectX and Direct3d programming.

Link to comment
Share on other sites

OK....on to the game itself...it is obviously not acceptable (nor politically correct) to point out a slightly leaky ceiling in an otherwise beautiful cathedral.

However, the definition of "the right drivers" should not be SOLELY based on whether they allow CMBB to run....I would suggest that CMBB should at least run fully successfully with any & all WHQL certified versions of the driver, which includes 40.72

But nevermind....it appears that the heathens (such as myself) who dare to point out that at least in one context, BFC may be taking an approach that while "technically pure" is empirically and pragmatically out of the mainstream, are "not being realistic"

Matt, please understand that I never had the intent of being severely critical of your tremendous product - am only trying to point out a small flaw in your technical/business thinking.

A side, but related note: - I am currently running a small ($22M) printer and consumer elecrtonics business with a team of 3 software developers on staff, whom I just got finished coaching on the difference between the technically "best" approach to writing printer drivers versus what was required to meet the needs of the business (i.e., writing a native driver for our printers which would require the customer in a non-PC literate environment to install our drivers into a mission critical system, versus emulating the market leader such that we could simply drop in our printers as a turnkey replacement.) The latter approach, albeit "less technically elegant", is more optimal from a pragmatic business standpoint.

My only futher - and parting advice - is to be wary of letting yourself go down a path of thinking/rationalization about how your customers should behave and/or conform to your requirements in order for them to realize the "privilege" of running your software. Too much of such pride can sometime goeth before the fall....

Link to comment
Share on other sites

As I understand things the basic graphics routines for CMBx are pushing five years old. They are having driver issues with video cards and operating systems that were not even in beta when the code was written. Moreover, the game fundamentally works now--maybe not with features which did not exist on video hardware when the code was created. So now BFC should go and rewrite what is essentially legacy code due to changes amongst hardware which could not be envisioned?

Things are actually quite rosy now. You were not around for the first few batches of nVidia Win2k/XP drivers a few years back. They were a nightmare. At best one had to alt-tab through every screen. The 41.09s are wet dreams compared to them. Gee, you get some 2d issues with FSAA. Issues that are easily worked around to boot.

The other very, very valid issue now is that the 30.8xs are the fastest, most stable and most compaitible win 2k/xp drivers about. There really is no compelling reason to upgrade from them, save to be one of the cool people who change drivers weekly. When it comes to your video drivers, I follow a simple rule--if it aint broke, dont fix it. And I have not seen the 30s broken yet, save they are a few points shy on 3dmark now.

WWB

Link to comment
Share on other sites

a) I am running 30.82 at the moment, as I've had to deinstall virtually every new (beta & WHQL) version of nVidia drivers that have been released

B) I have been running CMBO and CMBB on various nvidia cards since they were first released. I am NOT a newcomer to CMBx or these issues

c) I have owned and run upwards of a hundred or more gaming titles on my various machines over the years since CMBx was first released. While many have had problems or glitches to various degrees, no one game or 3d gaming engine has had the consistent - and consistently non-addressed - issues with nvidia drivers as has CMBx.

And, as I should have expected, the tenor here is that the problem is not with BFC's coding approach and business philosophy, but rather:

a) nVidia

B) geeks who have the temerity to want to run beta releases of drivers (which seem to have about the same level of quality control as the v1.0 release of most games)

c) me - and people like me - who should just shutup, grin and bear it, and run whatever driver version happens to run CMBx

I'm even going to go out on a limb here - this is not based upon specific knowledge, but just a gut feel based on about 25 years experience in the technology industry and as a computer gamer.... the requiste fix by BFC for the CMBx engine to address this is likely a relatively small tweak of some specific & relatively limited modules of code. My guess is that this is fact a "religious" issue, rather than a "degree of difficulty" issue. However, I could be wrong - an admission I am willing to make, but perceive that it is politically incorrect to point out that our wonderful hosts may not be infallible.

So what is one to do when the first games are released that support - no, require - DX9 calls and the only drivers available will not run CMBB? Harangue nvidia for releasing drivers that work with about 99.9% of extant software, save for the "pure as the driven snow" CMBB?

Nevermind answering, am obviouslly baying at the moon here.....am just glad to see that BFC didn't declare Windows as being a sacrilege and coded their wonderful game in MS-DOS in order to reach the LCD of all potential users...

[ March 06, 2003, 08:22 AM: Message edited by: ggallagher ]

Link to comment
Share on other sites

Originally posted by ggallagher:

So what is one to do when the first games are released that support - no, require - DX9 calls and the only drivers available will not run CMBB? Harangue nvidia for releasing drivers that work with about 99.9% of extant software, save for the "pure as the driven snow" CMBB?

Well, yes, frankly! Fundamentally it's their responsibility!

NVIDIA clearly have a major quality control problem with their drivers. Their regression testing seems to be non-existent. You can see this from the number of problems which are fixed in a given driver version and then magically un-fixed later. The WHQL seal of "approval" seems to mean very little, except maybe that Microsoft have fallen down on the job too. I say this despite having quite high regard for their drivers (compared to some other hardware I've owned in the past)!

NVIDIA FSAA isn't the only long-standing disagreement between CMBx and graphics cards BTW. Ask anybody who owns an ATI card and wants to play foggy scenarios!

Link to comment
Share on other sites

Yeah, the solution is simple. We'll just have BTS/BFC get rid of all 2D screens. Make the interface pure 3D and get rid of the 2D info boxes, scenario selection screens, etc. Just make it look like Quake.

BTS/BFC pretty much know what the NVidia drivers are doing (or more properly, what they're doing incorrectly) that is causing the problems with CM. The CM series is fairly unique in its interface and the combination of 2D and 3D on the screen at once is probably a big part of the problem. Most other games don't need to present as much info as CM does to the player, thus their interfaces can be much more simpler and utilize larger, 'graphic' text, etc.

If you're so accutely aware of coding issues in the software industry, then you should be familiar with the refrain that it only takes a small change or bug to cause a problem (often a major one). This is the case with the Nvidia drivers. Most programs don't suffer from the problems that CM does, because their interfaces don't need the same level of of driver integrity that CM does. Most of the legitimate driver problems with CM end up being the 2D screens or 2D data becoming corrupted/invisible/black.

So I say to BTS/BFC - just WING IT ! We don't need no stinkin' info ! Just use a pure mouse interface and print up a keyboard shortcut sheet. Force users to load scenarios from a command line rather than from a selection screen. Make users read text files outside of the game to read scenario briefings or find out specs on vehicles. Let's just keep it simple... like Quake !

There that ought to be a solution... :rolleyes:

The reason many other games (which are almost unvariably popular retail titles that sell 100,000's to millions of copies) don't have the problems that CM does is that they get tested by NVidia. It's called 'market share' and the biggest boys get the most attention. BTS/BFC are small fish and they have to pester Nvidia and other driver developers for attention to their problems. Since they don't make up a meaningful market share in the driver developer's eyes, they'll never be on the list of applications that are always tested to make sure that the release is mostly bug free.

People come on this board and complain that the latest driver or hardware doesn't work with CM. Often these are drivers or hardware that are released after the CM title has come out. They complain about how crappy BTS/BFC are when it comes to supporting these new items and that "there are absolutely no problems with other games I have... only crappy CM has problems". It gets boring... some of the problems are self-induced because people upgrade drivers thinking that they're getting some great feature or performance (which is sometimes true) - rarely are the upgrades for compatibility reasons elsewhere. In fact I do the same thing myself with upgrading drivers, but since CM is the main game I play, I'm quite willing to go back to a 'working set' of drivers to have things work properly. Admittedly this is a bit of a problem when the latest 'family' driver is required for the newest hardware. At that point we're just dependent on the Developer Relations people hearing out BTS/BFC and actually getting the problem addressed in the drivers.

Here's a worthless analogy. Let me tell you a story... Say you live out in the country and there's only one main road from the tiny community where you live to the city that you work in. Well, the state transportation department decides one day that they're going to close down this road because there aren't funds to maintain it - those funds are being spent on roads in the city. Maybe they'll reopen the road one day, maybe not. Well, for everyone in the city this isn't a problem, but for your community this is a disaster. Unfortunately your community doesn't have enough pull with legislators to get anything done about this situation. So you're stuck with whatever bureaucrat decides that funding should be made available to maintain and reopen that road again. Such is the situation that BTS/BFC face with video driver developers. Of course this analogy isn't perfect, but maybe you'll get the idea a little better.

Link to comment
Share on other sites

Seems this issue seems to be popular in several threads at the moment so let me weigh in quickly.

I wish it were as simple as us just changing the code and everything with Nvidia would be peachy keen but that simply is not going to happen nor is it even realistic.

Nvidia releases patches almost weekly (either official releases or leaked beta drivers to sites like www.guru3d.com).

Look at the comments from people that download and install these drivers. Fluctuating 3D Mark scores, all sorts of visual anomolies, system instabilities etc...

Nvidia does not divulge WHEN new offical release drivers are coming out so if we were to do some sort of code hack to fix something how do we know how long it would work until the next new drivers were released? What about all the scores of OEM drivers that are floating around, many based on different Nvidia driver versions themselves?

Their is also the fact that Nvidia KNOWS that their drivers are where the errors lie.

The issue with the FSAA we saw before 2 years ago. When CMBO was released everything worked fine, then a month or so later they released a new official release of TNT/GeForce drivers that totally screwed up FSAA. We told them about it and after a few months another driver release came out that fixed the problem.

Now, here we are 2 years later and in Decemeber Nvidia released the current 41.09 series drivers replacing the 30.82/30.87 series and the problem is back again. Its not a new problem, its the same mistake they made before and we have once again notified them of it.

Remember, CMBB will get maybe one more patch, and then thats it. Since the track record of Nvidia is anything but consistent it makes sense for us to just ensure that our code obeys the rules and hope that Nvidia once more comes around with their drivers and fixes the problem.

Look, I KNOW its frustrating to have to sometimes play driver bingo. I do it all the time myself. Every time a new beta driver is released I test it on my home machine and then I end up going back to either 30.82 or 30.87.

They are simply the best.

I will be doing some testing very soon with the new GF4 4800's as well and will let you guys know what I find.

One last thing, don't stake too much weight on WHQL drivers. In order to get WHQL certified all a driver has to do is perform up to spec on some arbitrary tests that MS has setup. None of them have to do with performance or features, rather they are about how they install and uninstall primarly.

Its sorta like ISO9001 certifications. Those of you that have worked at a place that was ISO certified will know what I mean. WHQL is not a standard for quality, just for compliance to what MS wants.

Madmatt

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...