Jump to content
Sign in to follow this  
Marc Anton

no Fog display Win7

Recommended Posts

Windows Vista, Windows 7 and Windows 8 do NOT support 'fog tables' under DirectX, which is the method that the CMx1 series utilizes to display fog. Unfortunately the only way to see fog in the CMx1 series is to run it under Windows XP or earlier ('compatibility modes' do NOT make a difference here).

Share this post


Link to post
Share on other sites

Just curious, Schrullenhaft, but is there any other way to make fog? I previously asked Battlefront if they'd be interested in a v1.05 for CMAK, to address a few remaining issues (AI late-game suicidal charges; widescreen; unlocking nations so that any country's army could fight any other; and having rivers, bridges and railroads appear in Quick Battle maps, etc) but they weren't interested. But I wonder if you guys found a work-around for post-XP OSs to show fog, that along with a widescreen compatibility, there might be enough interest to offer another update, and enough interest that customers might be prepared to pay a small extra fee for it to make it worth Battlefront's while??

Share this post


Link to post
Share on other sites

I suspect that those 'utilities' are just exposing (or inserting) some legacy registry keys that are not quite applicable to the current drivers or even truly functioning.

The fog that CMx1 games utilize is 'pixel fog' or also called 'table fog', which uses tables to provide values for fog rendering effects. Generating fog in this manner is considered a 'fixed function pipeline'. Fixed function pipelines pretty much disappeared with the release of DirectX 10; being replaced with shader code that was more flexible. DirectX 10 supposedly has fixed function emulation calls that would allow for re-creating 'pixel fog' using shader code. However this appears to require that the application be coded up to utilize these specific calls instead of acting as some sort of driver-level emulation of the table/pixel-fog.

Driver-level emulation of pixel fog - allowing an un-modified program to get the same effects as it did under DirectX 9.x and earlier - seems possible, but it appears that neither Nvidia or ATI/AMD have decided to do that. Most likely they have concentrated their resources on effectively supporting the new calls that came with DirectX 10 and the vast changes that it ushered in for graphics rendering.

So to get the fog graphics back into CMx1 games most likely would require re-coding them to support the emulation functions within DirectX 10+. The last time that the CMx1 code was touched was when Phil created the 1.04 patch to fix some DirectX issues that made the games unplayable. That apparently took quite a bit of effort to update some of the DirectX calls to slightly newer variants that had better/more-predictable support under DirectX 10+. I don't think that Battlefront is going to re-visit the CMx1 code at any point in the future. While the games were pretty popular, I don't think it would be financially feasible since there most likely would be not enough customers who would purchase a 1.05 patch to pay for the time to code it. It does seem unfortunate that some bugs and issues remain on these classic games, but we have to look to the future to stay in business (a refrain heard from numerous game developers unfortunately). One advantage with our current CMx2 engine is that updates and new/improved features can make it back to some of the earlier games. So CMBN is getting a 'version 2.0 engine' that came out with CMFI and it MIGHT see a 'version 3.0 engine' whenever that is designed. However there will be a limited life span to the games and CMBN will not be indefinitely supported, but it will have the opportunity to be updated moreso than a number of CMx1 titles did.

Share this post


Link to post
Share on other sites

Thanks, I understand the desire to move on, but I do still think there might be enough interest in the CM1 community to buy an update based on widescreen and the other issues - and there is another, simpler (albeit less satisfying) way to mimic fog: tweak the horizon feature to much less than 1000m and/or display far off bitmaps in faded form, and add in foggy looking sky bitmaps. And the same issues could be solved for both CMBB and CMAK.

If Battlefront won't revisit CM1, I wish they'd consider allowing modders access to the engine. I'm sure there'd be a modder out there somewhere who could tackle it, or else ask one of the CM1 team to take some of these issues on as a pet spare-time project. I appreciate the financial aspect, which is why I for one (and sure most other CM1 players) would happily pay for an update.

Share this post


Link to post
Share on other sites

You don't have to modify the binary. You can insert a pre-loaded shared library to run between your program and the direct3d library. You can then go and look at calls coming to one function in that library and mess with them, use different parameters, or call a different function altogether. This is commonly done to teach stupid programs about new ways to open files, you simply insert yourself into the open(2) of fopen(3) calls.

If you look at the direct3d calls for fog tables and vertex fog you see that both aren't too different. Most of the complication is that intercepting library calls for C++ is a pain because of the name mangling. I've never done it in windows but frequently in real computers.

Share this post


Link to post
Share on other sites

http://msdn.microsoft.com/en-us/library/windows/desktop/bb205332(v=vs.85).aspx

http://msdn.microsoft.com/en-us/library/windows/desktop/bb206336(v=vs.85).aspx

If you look at the code examples, it looks like you can translate the parameters pretty quickly. Both have start, end and density. And even if you get them wrong who's notice an incorrect fog depth?

Share this post


Link to post
Share on other sites

This is interesting...I have an old Dell Desktop Optiplex 755, Core 2 Duo, Win7, ATI HD 2400 Pro (256mb)Vid and it shows Fog for all my CMx1 games. However, there are blended earth-toned colored lines ( every half inch ) on monitor mixed in w/Fog that doesnt give a 100% realistic look, but good enough for game purposes.

In contrast, I have an even older Compaq D510SFF Desktop, P4, Win XP, Nvidia MX40 (64mb) vid, and it shows Fog w/out those blended lines giving a 100% realistic look.

Both my older Dell D810 Laptop, Win XP, ATI 600 Vid, and D830 Dell Laptop, Win XP, Nvidia 140, don't show Fog.

Joe

Share this post


Link to post
Share on other sites
You don't have to modify the binary. You can insert a pre-loaded shared library to run between your program and the direct3d library. You can then go and look at calls coming to one function in that library and mess with them, use different parameters, or call a different function altogether. This is commonly done to teach stupid programs about new ways to open files, you simply insert yourself into the open(2) of fopen(3) calls.

If you look at the direct3d calls for fog tables and vertex fog you see that both aren't too different. Most of the complication is that intercepting library calls for C++ is a pain because of the name mangling. I've never done it in windows but frequently in real computers.

Well of course Windows offers no less than 4 ways to do the same thing:

http://en.wikipedia.org/wiki/DLL_injection

Share this post


Link to post
Share on other sites
... If Battlefront won't revisit CM1, I wish they'd consider allowing modders access to the engine. I'm sure there'd be a modder out there somewhere who could tackle it, or else ask one of the CM1 team to take some of these issues on as a pet spare-time project. I appreciate the financial aspect, which is why I for one (and sure most other CM1 players) would happily pay for an update.

Yep sure would be nice for the engine to be open source for the community... love the time lines that CMBB and CMAK can cover. Early to mid war (late 43) are my favs.

Share this post


Link to post
Share on other sites

Well I already have a budget set aside to pay for/bribe the owner of an existing wargame to release it into open source. I can't imaging that it will be CMx1, though. The open source camp and the BFC core crew differ quite a bit in opinions :)

But indeed, my dream is to have an open source thing that starts out where CMx1 was, deletes a couple of the useless features that were also deleted in CMx2, and then develops from there in the opposite direction. That means you stay away from 1:1 infantry and keep the point-like squads and point-like vehicles. You don't go smaller in scale like CMx2 did, you go bigger. What you give the users is larger maps, larger forces and a couple tools to manage that (e.g. SOPs that inherit through command chains and user-definable pathfinding). Then you put multiplayer per side on top.

Share this post


Link to post
Share on other sites

And that bigger scale could be each unit represents a Platoon, like that of Talon Soft's East Front & West Front series ( which is now John Tiller's Campaign Series ), but with a 'WEGO system instead of the unfortunate 'My turn, Your turn' that that these games have.

Share this post


Link to post
Share on other sites

Yes, bigger is better for many of us. I know that some really enjoy the more detail of CM2, but, it's the reason I loved Panzerblitz, but found SL and ASL to be just too detailed and too much like hard work.

A simple CM1 Operational level would be great (obviously). If we had a CM Campaign level a la Close Combat series rather than attempting to make it a standalone game (which imo scuppered it) CM1 would be even more widely played than it still is. How to enable BF to mke some money out of it is the issue, as they certainly deserve to given the incredible value we all got from the CM1 series.

I worry that CM2 with all the separate game series/families and non-transferable mods etc will get to be like hard work to keep current for many players.

Share this post


Link to post
Share on other sites

It may not need to be "open sourced" as such. I think in the past some companies, via a senior employee who still had a fondness for the game (either working on it themselves or with a trusted programmer-modder) have put out an update (either free or that people could buy).

It just seems to me that adding a widescreen compatibility alone would present enough CM1 gamer interest and thus a small financial opportunity that Battlefront are missing out on to revisit and offer an update. I'm fairly sure that some CM2 gamers would also pop back and buy a CM1 update patch too. Having now experienced CM2, it has some prettier graphics that will no doubt appeal to some, but overall I don't like the CM2 format or its lack of truly random maps (or its narrower time-spans of the war). I'd have been happier with a souped-up CM1 with just tweaked infantry movement graphics, tweaked maps and improved AI combined with a campaign option and maybe adding some game-option to switch to platoon-based instead of squad-based unit sizes for the larger battles. Oh, and adding in the Japanese and a Far-East theatre....

Share this post


Link to post
Share on other sites
It may not need to be "open sourced" as such. I think in the past some companies, via a senior employee who still had a fondness for the game (either working on it themselves or with a trusted programmer-modder) have put out an update (either free or that people could buy).

It just seems to me that adding a widescreen compatibility alone would present enough CM1 gamer interest and thus a small financial opportunity that Battlefront are missing out on to revisit and offer an update. I'm fairly sure that some CM2 gamers would also pop back and buy a CM1 update patch too. Having now experienced CM2, it has some prettier graphics that will no doubt appeal to some, but overall I don't like the CM2 format or its lack of truly random maps (or its narrower time-spans of the war). I'd have been happier with a souped-up CM1 with just tweaked infantry movement graphics, tweaked maps and improved AI combined with a campaign option and maybe adding some game-option to switch to platoon-based instead of squad-based unit sizes for the larger battles. Oh, and adding in the Japanese and a Far-East theatre....

Well employee or not, I think securing a license with BFC would be a challenge. Open source is right out given past statements but Steve in particular seems to be both very protective of his babies and I also think that a CMx1 let loose would be considered cannibalization of the CMx2 franchise.

Of course you could do a CMx1 clone from scratch but that's not a weekend warrior project.

Share this post


Link to post
Share on other sites

Perhaps licensing out CM1 is seen as a potentially no-win situation for BFC.

1) They clearly want to having nothing more to do with CM1 for whatever reason. They see the increased fidelity of CM2 as a simulation more than as a game as being the future.

2) However, logically, if BF were to offer a license to revamp CM1, BF has to contractually allow a reasonable opportunity for a third party developer to make money out of a revamped CM1 somehow.

3) BF only "wins" if they can get a bunch of money from a third party and then the "revamped" CM1 is unsuccessful (makes very little money, or loses money). But, then that diminishes any perceived value that CM1 may have. (Kinda like your million dollar house is only worth that so long as you and the bank say it is. The moment you try and sell it and are offered only $500,000 you are screwed and the value is adjusted downwards.)

4) But, what happens if the revamped CM1 was a big hit?

BF would then have created a huge competitor for CM2, and they could look foolish if revamped CM1 (being for many a more accessible and fun product than CM2) starts beating CM2 in sales and the third party developer starts making good profits.

So, from a decision-making game perspective, it's safer for BF to "discourage" any attempts to revamp CM1 by either making a license too expensive/having too arduous profit participation terms, (or simply not granting any licence at all).

The challenge for any improvement of CM1 is perhaps that BF is overvaluing a revamped CM1's potential revenues, while at the same time saying it's not worth investing any more effort in it themselves.

Share this post


Link to post
Share on other sites

Well the trick is of course to develop from CMx1 in a direction opposite of CMx2. Larger maps, more units, formation commands, SOPs, multiplayer per side. Keep point-shaped squads and point-shaped vehicles, keep shift-C and flat trees. You could write that in a contract with a third party developer, or even into a license for an open source project (although custom licenses tend to kill open source projects).

Unfortunately BFC's experience with licensing is mixed, see CMC. I think the only successful licensing project was CMA and we have no idea who made any money of it, if anybody.

Share this post


Link to post
Share on other sites

Hmm. Well, if BFC's aim is to disappear down the simulation route with CM2 and then CM3 etc, they wouldn't really be in competition with their earlier CM1 as a sort of classic-table-top wargame. So it wouldn't really be a no-win situation for them.

Yes, I wasn't thinking licensing or contracts, but done in-house through either a full-on re-commitment to a major CM1 update patch (unlikely) or just finding an old-hand within the company who likes the game to promulgate some sort of mini-updates just as a low-priority thing between other jobs (which to me seems sensible). Or the old-hand doing so with help from one or two trusted modders who have code-writing ability (though I suppose that would probably mean the resultant updates would need to be free - though frankly I think a widescreen update patch should be free anyway seeing as they still sell CM1).

Anyway, let's face it guys, it ain't gonna happen......

Share this post


Link to post
Share on other sites

Agreed.

The Operational Art of War did an update with Matrix that brought in wide screen.

BFC could do a Combined CMx1 pack. I am sure there must have been lots of stuff that didn't quite make it to earlier releases.

But I think it is partly political to the extent they've publicly said it is the end of the road for CMx1, yet still want to milk it.

Share this post


Link to post
Share on other sites
Agreed.

The Operational Art of War did an update with Matrix that brought in wide screen.

BFC could do a Combined CMx1 pack. I am sure there must have been lots of stuff that didn't quite make it to earlier releases.

But I think it is partly political to the extent they've publicly said it is the end of the road for CMx1, yet still want to milk it.

I also think that sales from the $5 patch for Vista were disappointing.

Never understood why people need it, runs fine on win7 here.

And I was royally pissed that they didn't even fix the CMBB fortifications bug (that was fixed in the code by the time of CMAK), even though they previously said that the problem with backporting the fix was the QA required to do any patch. But hey they introduced elicense to CMx1 versions that didn't have it before, so something was "fixed".

Need more coffee...

Sorry for blowing our chances to get the code :D

Share this post


Link to post
Share on other sites

this is a mystery of some sort, lol...

all comes down to compatible drivers and what not, i'm only just starting to get trouble with the old CMX1 series with some graphical black blocks on me screen, ever since moving to an ATI Card, i hate ATI. NVIDIA always had better support and less issues for me...however i tried the 2 demos of CMBB & CMAK with the 1.-4 patch and hey presto it works with no black blobs,

now this sucks, i'm gona have to spend more money just because of stupid ATI..lol.

i would move to win 7 in a second if i knew this would be fixed (no fog issue). i don't ever understand how the previous technologies / versions aren't ever much intergrated let alone supported. I have been a sole user of win xp for some time now..

@ Redwolf, it works ok for you on win 7? do you get the fog tho? mmmm?

Share this post


Link to post
Share on other sites

@ Redwolf, it works ok for you on win 7? do you get the fog tho? mmmm?

No. Win7 sees NVidia removing fog table support, too.

As I lined out earlier, somebody with some experience in preloading libraries in windows could hack this up reasonably quickly and translate fog table fog into vertex fog. But nobody stepped up. I still have a XP box for games like this so incentive is low (and I don't want to learn anything more about windows than I have to).

Share this post


Link to post
Share on other sites

Just to mention again, my old Dell Desktop Optiplex 755, Win 7, Core 2 Duo, ATI HD2400 shows Fog on all 3x CM1 games. However, the issue with the Fog is that there are faintly colored earth-toned lines mixed in ( more noticable at edge of Battlefield ) which doesn't give that 100% realistic Fog look that I had in Win XP.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...