VOGONS


dgVoodoo 2 for DirectX 11

Topic actions

  • This topic is locked. You cannot reply or edit posts.

Reply 940 of 3949, by leileilol

User metadata
Rank l33t++
Rank
l33t++
Dege wrote:

Indeed... One thing is still to be refactored in the DDI. The interface has some old misconcepts about rendering windows that I introduced when I implemented the first version of DDraw.
It would be nice to address that along with the GDI interaction. But I don't know if include that in the current version or release the current one as a new version and address the issue later.

The game's notoriously buggy and glitchy anyway, getting Streets stable at all would be some crazy black magic, and given the quality of the game when it does work it should be the lowest priority anyway. (but still a notch above Quarantine driving IMO)

apsosig.png
long live PCem

Reply 941 of 3949, by PhilsComputerLab

User metadata
Rank l33t++
Rank
l33t++

Been mucking around with Incoming, using the original CD, as well as the GOG copy.

The GOG copy seems to have a no CD check, as well as, somehow, play the CD audio tracks off OGG files.

There are two issues with the game AFAIK.

The first issue affects AMD cards with new drivers. Using dgvoodoo 2 solves this beautifully, no complaints.

The second issue, and this affects pretty much any modern graphics card, be it Intel, AMD, or Nvidia. Even a GeForce 2 has this issue. But confirmed working under Windows 98 SE with a TNT2 M64, Matrox G400, ATI Radeon 9200SE 128MB and Voodoo 3.

The issue is that some graphical elements, especially the HUD, are missing detail.

Here is what the game looks like on all the modern machines I tried:

You can see how the radar circle, and all the HUD elements are missing detail. The smoke coming out of the gun is also pixelated.

FADFPlo.png

This is how the game looks like on the old graphics cards mentioned above:

BxaWJMG.png

And this is dgVoodoo2 in action:

Full size: http://imgur.com/TkNOEEA

TkNOEEAh.png

So I'm wondering if this is something that can be solved with dgvoodoo2? It's something the TNT2, G400, 9200SE and V3 must be doing differently.

YouTube, Facebook, Website

Reply 942 of 3949, by teleguy

User metadata
Rank Member
Rank
Member
philscomputerlab wrote:

The first issue affects AMD cards with new drivers. Using dgvoodoo 2 solves this beautifully, no complaints.

The second issue, and this affects pretty much any modern graphics card, be it Intel, AMD, or Nvidia. Even a GeForce 2 has this issue. But confirmed working under Windows 98 SE with a TNT2 M64, Matrox G400, ATI Radeon 9200SE 128MB and Voodoo 3.

If you mean 3D acceleration being broken on drivers newer than Cat 13.1 then that can be fixed (most of the time) by putting an atiumdag.dll from one of the working drivers into the game folder.

This is how Incoming looks on my AMD card:

file.php?mode=view&id=17625&sid=7bff38c5a32f33b58cc211515847f5dc

Attachments

  • Filename
    Atiumdag.zip
    File size
    4.37 MiB
    Downloads
    2533 downloads
    File license
    Fair use/fair dealing exception

Reply 943 of 3949, by PhilsComputerLab

User metadata
Rank l33t++
Rank
l33t++
teleguy wrote:
philscomputerlab wrote:

The first issue affects AMD cards with new drivers. Using dgvoodoo 2 solves this beautifully, no complaints.

The second issue, and this affects pretty much any modern graphics card, be it Intel, AMD, or Nvidia. Even a GeForce 2 has this issue. But confirmed working under Windows 98 SE with a TNT2 M64, Matrox G400, ATI Radeon 9200SE 128MB and Voodoo 3.

If you mean 3D acceleration being broken on drivers newer than Cat 13.1 then that can be fixed (most of the time) by putting an atiumdag.dll from one of the working drivers into the game folder.

This is how Incoming looks on my AMD card:

Beautiful! Thank you heaps. It's working on my AMD notebook now. Never looked prettier 🤣

Interesting that dgVoodoo2 gets the game going with the latest AMD drivers, but the image ends up bugged, just like with Nvidia cards. I'm wondering if there is anything else I can try to get the game to look correct on Nvidia, but it seems it's a driver issue and AMD works correctly for this game, but Nvidia doesn't.

Oh, Intel has the same issue. I tried messing around with some of the settings in dgVoodoo2, but didn't have any luck. Helpful for any ideas...

YouTube, Facebook, Website

Reply 944 of 3949, by Dege

User metadata
Rank l33t
Rank
l33t

Interesting that dgVoodoo2 gets the game going with the latest AMD drivers, but the image ends up bugged, just like with Nvidia cards. I'm wondering if there is anything else I can try to get the game to look correct on Nvidia, but it seems it's a driver issue and AMD works correctly for this game, but Nvidia doesn't.

Oh, Intel has the same issue. I tried messing around with some of the settings in dgVoodoo2, but didn't have any luck. Helpful for any ideas...

There is no workaround for that. That bad looking comes from the colorkeying method that dgVoodoo uses, it's by design.
DirectX specs don't say anything about the expected results of simultaneous colorkeying + bilinear texture interpolation, so I decided to implement the nVidia-like method. It gives the same result on all cards (ATI, nVidia, Intel) because colorkeying is done in dgVoodoo's shaders, it's not up to the graphics driver.

I want to address this issue by bringing ATI-like colorkeying into dgVoodoo. Neither method of the two is better than the other, they are just different and give bad results under certain circumstances but it would be nice to let the user choose between them. My only problem is the HOW. 🤣
I don't want new checkboxes into the setup so I think the best would be adding two new card types (some contemporary ATI and nVidia) in addition to the 'dgVoodoo Virtual Card'.

Reply 945 of 3949, by Dege

User metadata
Rank l33t
Rank
l33t
leileilol wrote:
Dege wrote:

Indeed... One thing is still to be refactored in the DDI. The interface has some old misconcepts about rendering windows that I introduced when I implemented the first version of DDraw.
It would be nice to address that along with the GDI interaction. But I don't know if include that in the current version or release the current one as a new version and address the issue later.

The game's notoriously buggy and glitchy anyway, getting Streets stable at all would be some crazy black magic, and given the quality of the game when it does work it should be the lowest priority anyway. (but still a notch above Quarantine driving IMO)

It's too late, I've done it. 😀
The only issue I experience is the starting movie, it's not visible because it's by GDI, but other than that the game works, DDraw and Glide now cooperate together (never understood how that could be done with a 3Dfx driver).

Reply 946 of 3949, by PhilsComputerLab

User metadata
Rank l33t++
Rank
l33t++
Dege wrote:

I want to address this issue by bringing ATI-like colorkeying into dgVoodoo. Neither method of the two is better than the other, they are just different and give bad results under certain circumstances but it would be nice to let the user choose between them. My only problem is the HOW. 🤣
I don't want new checkboxes into the setup so I think the best would be adding two new card types (some contemporary ATI and nVidia) in addition to the 'dgVoodoo Virtual Card'.

I appreciate you taking the time for this, and it's great to hear that you know what's going on.

How many games would you think are affected by different ways of colorkeying? Or from another angle, is one method used less than the other? For example, if Nvidia is the default of dgVoodoo2, would more games display correct, than if the ATI way of doing it would be the default?

If it's just a handful, you could have an ATI colour key compatibility tickbox with a tool-tip "Tick this if you are playing any of these games: Incoming, Game ABC,..."

Just an idea...

HUBjYMV.png

YouTube, Facebook, Website

Reply 947 of 3949, by Dege

User metadata
Rank l33t
Rank
l33t
philscomputerlab wrote:

How many games would you think are affected by different ways of colorkeying?

I don't really know but I think the number of those is low. 😀
Since the colorkeying+bilinear filtering technique itself is really bad, I don't think that much games apply it.
I encountered two during my tests (of ~70 games): Extreme G-2 and Incoming.

philscomputerlab wrote:

If it's just a handful, you could have an ATI colour key compatibility tickbox with a tool-tip "Tick this if you are playing any of these games: Incoming, Game ABC,..."

Just an idea...

That's what I don't want. An average user has no idea what colorkey is, so such a tickbox would be another pain to bother and play with.
The concept of an emulated card is pretty clear, in the worst case the user just tries all of them, as he/she would change the video card in his/her computer.
This would also let the user to disable/enable other DX features like paletted textures, unwittingly (packing a set of options into the term of video card).

Reply 949 of 3949, by Expack3

User metadata
Rank Member
Rank
Member
Dege wrote:

That's what I don't want. An average user has no idea what colorkey is, so such a tickbox would be another pain to bother and play with.

Then why not add an "advanced" mode which can only be used with the dgVoodoo 2 virtual 3D accelerator? Maybe even adding a warning just to tell people that they really need to be advanced graphics card users before they try their hand with these settings. That way, you can ensure those who are confident enough in their GPU knowledge can tweak settings to their liking, while the average user will be scared away and stick with the safe settings.

Reply 950 of 3949, by Dege

User metadata
Rank l33t
Rank
l33t
Expack3 wrote:

Then why not add an "advanced" mode which can only be used with the dgVoodoo 2 virtual 3D accelerator? Maybe even adding a warning just to tell people that they really need to be advanced graphics card users before they try their hand with these settings. That way, you can ensure those who are confident enough in their GPU knowledge can tweak settings to their liking, while the average user will be scared away and stick with the safe settings.

Because I want to avoid an average user getting to advanced settings.

The theory is that dgVoodoo has an internal virtual 3D card. This card is manufactured by me ( 😀 ) so its chip has several features that are adjustable and configurable. So we could have a control panel like ATI's and nVidia's have for advanced users.
But, on the other hand, if an average user wants to play e.g. Incoming with nice appearance then he/she would have no other choice than getting to the advanced settings panel and begin playing with the options. It's not good because it's not designed for him/her and dgVoodoo becomes confusing and hardly configurable at once.
That's why the 'video cards with predefined feature sets' and 'advanced settings for internal virtual card' could only exist together, I think, because the average user has another choice for trying in this case.

I have added two new card types to dgVoodoo,
- GeForce4 Ti 4800 ('full cut' colorkeying, no 32 bit z-buffer) (manufacturer id: 0x10DE, device id: 0x253)
- ATI Radeon 8500 (no paletted textures, plain colorkeying, no 32 bit z-buffer) (manufacturer id: 0x1002, device id: 0x514e)

both with 64MB and 128MB videomemory optionally. I took the id's from the database in CardID.tom of StarTopia.

I still don't know how to hide an 'advanced settings panel' from the users so I won't include that in the next version.

Reply 951 of 3949, by PhilsComputerLab

User metadata
Rank l33t++
Rank
l33t++
Dege wrote:

I have added two new card types to dgVoodoo,
- GeForce4 Ti 4800 ('full cut' colorkeying, no 32 bit z-buffer) (manufacturer id: 0x10DE, device id: 0x253)
- ATI Radeon 8500 (no paletted textures, plain colorkeying, no 32 bit z-buffer) (manufacturer id: 0x1002, device id: 0x514e)

That's awesome, thank you!

YouTube, Facebook, Website

Reply 952 of 3949, by galneon

User metadata
Rank Newbie
Rank
Newbie

It seems like these new card types cover the advanced options that would have been available, at least in the short-term, but I'll say this as someone else probably would have eventually: I don't think the sort of people who are interested in playing an old game like Incoming are necessarily "average users" who will be intimidated by advanced options. In fact, I don't think most people interested in a DirectX/3dfx wrapper would be intimidated by advanced options.

Reply 953 of 3949, by teleguy

User metadata
Rank Member
Rank
Member
galneon wrote:

It seems like these new card types cover the advanced options that would have been available, at least in the short-term, but I'll say this as someone else probably would have eventually: I don't think the sort of people who are interested in playing an old game like Incoming are necessarily "average users" who will be intimidated by advanced options. In fact, I don't think most people interested in a DirectX/3dfx wrapper would be intimidated by advanced options.

+1

Reply 954 of 3949, by PhilsComputerLab

User metadata
Rank l33t++
Rank
l33t++

On the other hand you have many users who "just want to play this old game", have a nostalgic urge, but are not very computer literate. They won't even study the readme files 🤣

YouTube, Facebook, Website

Reply 955 of 3949, by Expack3

User metadata
Rank Member
Rank
Member
Dege wrote:

That's why the 'video cards with predefined feature sets' and 'advanced settings for internal virtual card' could only exist together, I think, because the average user has another choice for trying in this case.

That's kinda what I meant in the first place... 😐

Reply 956 of 3949, by HunterZ

User metadata
Rank l33t++
Rank
l33t++

I'm intimidated by the expectation that I should know enough about the specifics of old video cards to be able to know which ones should be emulated for which games...

It would almost be better to have the more granular (aka "advanced") checkboxes, but to accompany them with screenshots that show which rendering problem each is meant to address. That way you could approach each new game with a "vanilla" settings profile, and then start enabling options when specific issues are encountered.

In either case, including pre-created settings profiles for various games would probably be helpful if the user is expected to vary the configuration in any way on a per-game basis.

Reply 958 of 3949, by Dege

User metadata
Rank l33t
Rank
l33t

I released a new WIP

http://dege.fw.hu/temp/dgVoodooWIP9.zip

I'm intimidated by the expectation that I should know enough about the specifics of old video cards to be able to know which ones should be emulated for which games...

You don't need to know the specs. If a game doesn't run properly with a given video card then just try that with another card.

It would almost be better to have the more granular (aka "advanced") checkboxes, but to accompany them with screenshots that show which rendering problem each is meant to address. That way you could approach each new game with a "vanilla" settings profile, and then start enabling options when specific issues are encountered.

Ok, I'm not against the advanced granular settings, I just don't want to have it on the (main?) GUI. Because as Leileilol wrote

Many would probably check the Pointcast thing for no reason other than a placebo effect for better detail.

I've seen a lot of this kind of 'config tweakings' from users undisputedly having no clue about what they are doing (back in the dgVoodoo 1 times).
Advanced settings should be accessible only from command line, or from an ini file or sg like that, I don't know it yet.