I'm pretty sure that any antialiasing the gma945 does is in software. You don't want to enable it.
I'm pretty sure that any antialiasing the gma945 does is in software. You don't want to enable it.
OK, I'll look at the Fog issue. I'm fed up of not having fog myself. No promises though!
There may also be added benefits from using Direct3D9 (such as improved performance due to better internal batching) but we'll have to see - one issue at a time.
Theoretically, we could use DX10 or even DX11 instead of DX9 though at the moment I can't think of any real, tangible benefits (except ultra-coolness).
Bloom/HDR rendering (using DX9) is something I'd though about, though this may be tricky to pull off with only device state to examine at runtime. You don't want to bloom the GUI, for example, but perhaps we can assume that all primitives T2 sends to render whilst fog is enabled are world geometry and the rest of the primitives are non-world (such as gui).
I can think of a very real, tangible reason not to use DX10 or DX11 - they need Windows Vista or Windows 7. Limiting yourself to those for a hack designed to make Thief work as well as possible for the most number of people would be rather foolhardy.
Also, it's been a while so I can't quite recall the specifics, but you'll want to hunt through this thread to see why Timeslip originally abandoned the D3D9 version if you haven't already.
Bloom, sweet Builder nooo.![]()
Because thief / thief 2 are dx 6/7 games, Timeslip switched ddfix's engine or whatever it is (i'm not a programmer so excuse me) from dx 9 to dx 6, back in version 1.1.1. So, unless you have better success than timeslip with dx 9, it may not be a good idea. Just thought i'd mention it, but I probably don't understand it very well. Also, are you familiar with the bloom trick from enbseries? There was a thread from last year about enbseries. I also found this one while searching for the link.
I didn't realise that Timeslip had a DX9 version. I'll obviously use it as a starting point. Thanks for the heads-up on that one!
Fixing fog is the primary goal and currently the only goal. I can't remember the last time I myself saw fog, so that is my motivation.
HDR/Bloom is merely an idea. DX10/DX11 is merely an idea. If you have a DX11 card then using D3D11 may by the only way to get at the newer higher quality AA. Anyway, for my part, DX10/DX11 functionality would be as a *secondary* addition to DX9 support. If we want to be really wacky we could replace Timeslip's DX9 code with OpenGL.
If I do have some luck with fog then I'll be looking for beta testers. And before any public release I will need to contact Timeslip, if I can, to make sure I'm not "treading on anyone's toes".
Nah, if you want to make your own version, feel free. Doubly so if it improves on mine.And before any public release I will need to contact Timeslip, if I can, to make sure I'm not "treading on anyone's toes".
Problems you'll bump into are thief's habit of locking the front/backbuffers and trying to copy 16 bit data into them, (the bits where it locks the front buffer are the ones that cause most problems in dx9, since you don't have direct access to it,) issues with vsync, (turning it on breaks menus, turning it off causes in game problems,) and a few render states that seem to do something slightly different in dx9 as they did in dx6. I can't remember the reason I switched back to dx6. Probably a compination of all the little problems.
Last edited by Timeslip; 13th Oct 2009 at 17:01.
The D3D9 version is very old now, though. As far as I can recall, it was made before any of the high-res texture replacement options, amongst other things.
What would be great, SiO2, is if you could create a single all-purpose tool for running the Dark Engine games on a modern PC. If that's possible, of course. I'm talking about improving DDFix to get fog working, and maybe other improvements, but also incorporating the excellent and essential Enhanced Resolution patch (aka the Widescreen patch). Having everything in a single package would be simply sweet.
Yeah, since one person stepped forward to do something for the common good, why not put the whole load on him and see how far he can go.
To be honest if you can get fog working and possibly internal AA support that would be all that.s needed. But converting to openGL would be VERY VERY good, as this would open up thief to other possibilities.
Regarding testing, may I suggest using the shalebridge testing forum and can I also suggest getting some testers as savvy as you with regarding to this type of programming, eg Timeslip, NewHorizon, Potterr, Ascottk, JohnP and a few others who I would group into the same level of tech ability.
Are being serious or extracting the michael..?
Last edited by bikerdude; 13th Oct 2009 at 17:40.
Why waste his time on internal AA support? What's wrong with setting it in the graphic card's control panel?
Works just fine for me. Is it a Vista-specific problem, or something that got broken in the most recent drivers (mine are a few versions out-of-date, 185.85 I think.)
Just to make sure I understand, you guys are saying fog stopped working with newer hardware?
Last edited by sNeaksieGarrett; 13th Oct 2009 at 20:20. Reason: oops, typo
Well yes. It does technically work on ATI HD3***/4***'s, but still buggy (disappears after looking at a readable)
And only in vista, in XP it works very well.
The problem, if I recall correctly from looking into this a year or so back, is that you need to patch your .exe for the specific non-standard resolution you want to use, whereas a DDFix-patched .exe is generic to any setup.
OK people, very first step is for me to run Timeslip's DX9 version and verify that it works for me.
Then I'll write the shaders to do fog. I'll touch nothing else, even if there's noticeable bugs (unless they're pathological). If I can't get fog to work then all else is moot. If I can get fog to work then we can see what else may be needed (though just fixing fog is probably good enough for now).