Thief 1/2 & SShock 2: DDFix and Enhanced Resolution Patch - discussion - by bikerdude
Timeslip on 10/4/2008 at 18:55
Quote Posted by Bikerdude
Evening Timeslip
Im beta testing an FM atm which very large and complex.
When playing it under 1.2.5 or 1.2.6 its fine, smooth no stutter or lag etc.
When playing it under 1.3.9 or 1.3.9b there is huge amounts of lag/stutter when I look around or move..
Any ideas..?
biker
Does setting Thief2Extensions=0 fix it?
bikerdude on 10/4/2008 at 19:28
Quote Posted by Timeslip
Does setting Thief2Extensions=0 fix it?
yes. I have been playing 5 tigers with it set to auto and it was fine though...
biker
Hiatus on 10/4/2008 at 19:52
Timeslip
why merely setting Thief2Extensions to 1 could be causing this lag/stuttering in huge missions? And, do you think there's any room for performance improvement here? If only turning it on w/o actually using HD textures causes these issues, what's going to happen with lots of hi-res replacement world and object textures in large FMs? This is a bit worrying unless you are able to squeeze some more perf. out of it so we don't need monster rigs to power it all ;). Wonder where perf. bottlenecks lie with Thief2Extensions=1: CPU too weak? Or GPU/RAM etc? (I mean, are there more calculation power or bandwidth issues?)
Timeslip on 10/4/2008 at 20:05
1.3.10 is up.
Code:
bmp's used as replacement textures are no longer vertically flipped
When using .tga's for replacement textures, ddfix now respects the vertical/horizontal flip flags.
Added an option to manually set the refresh rate
ddfix will disable its texture loader if the res\ddfix directory is missing to improve performance
Quote Posted by Bikerdude
yes. I have been playing 5 tigers with it set to auto and it was fine though...
It must be pushing thief 2 to destroy/recreate multiple of textures per frame. That's the main thing that ddfix will slow down, because it breaks thief's texture cache that it usually uses to resuse texture interfaces.
1.3.10 should fix it for you, because now it'll leave the texture cache alone even if you turn Thief2Extensions on unless you really do have hi-res textures installed.
Edit: What graphics card is this with?
Hiatus on 10/4/2008 at 20:14
1.3.10? Wonder what you're up to with 1.4, Timeslip ;)
thank you for the new version, esp. for adding custom RR I asked about - will test how it works (if it fixes 75hz issue I described).
Timeslip on 10/4/2008 at 20:25
Quote Posted by Hiatus
1.3.
10? Wonder what you're up to with 1.4, Timeslip ;)
thank you for the new version, esp. for adding custom RR I asked about - will test how it works (if it fixes 75hz issue I described).
Nothing groundbreaking. Just bringing back windowed mode, adding a non-exclusive fullscreen mode and hopefully fixing ddfixes habit of not changing the resolution back properly when you exit thief. That's going to take some shuffling around off ddfix's inards though, which is what I reserve full version number changes for. (e.g. 1.3.9->1.3.10 is a minor change, because code changes were restricted to a few functions. 1.2.7->1.3.0 was a major change because it added multiple extra source files and replaced 2 whole interfaces.)
bikerdude on 10/4/2008 at 20:34
Quote Posted by Timeslip
Edit: What graphics card is this with?
I currently have a Evga 8800ultra SuperClocked @684/1706/1145.
How is DDfix affected by the above.....?
biker
Hiatus on 10/4/2008 at 20:34
just tested: setting/forcing RR=85 in .ini now fixes my 75Hz-out-of-nowhere issue - yuppi :thumb:!
ps how about framerate limiter? Timeslip, is it doable/feasible in current ddfix dev. stage? (I'd soo would like to be able to "emulate" LCD on my CRT ;)).
Quote Posted by Timeslip
adding a non-exclusive fullscreen mode
what is it going to give us in practise? open up any new possibilities etc?
Quote Posted by Timeslip
hopefully fixing ddfixes habit of not changing the resolution back properly when you exit thief.
hmm...? never had this issue I think but then I don't know what you mean by "proper" here. Was/it is hardware//driver specific bug/problem?
Timeslip on 10/4/2008 at 20:47
Quote Posted by Bikerdude
I currently have a Evga 8800ultra SuperClocked @684/1706/1145.
How is DDfix affected by the above.....?
biker
It was a memory issue more than speed. There was a bug in the early 8800 drivers that caused performance degradation if you repeatedly free'd and reused vram. On second thoughts I can't imagine that being the cause here though; it shouldn't kick in instantly, but should rather cause the stuttering to increase gradulaly the longer you played the mission. :erg:
Quote Posted by Hiatus
ps how about framerate limiter? Timeslip, is it doable/feasible in current ddfix stage? (I'd soo would like to be able to "emulate" LCD on my CRT ;)).
Not yet. Maybe in 1.4: It'll require another framebuffer, or you'll be limited to integer multiples of your refresh rate.
Quote Posted by Hiatus
what is going to give in practise?
Not much, it just means that thief is better behaved towards other programs. Running in a window requires non exclusive mode anyway, so it's no extra effort to add a fullscreen version too. (There's already code in ddfix for running in non exclusive mode anyway. I use it all the time because it makes debugging so much easier.)
Quote Posted by Hiatus
hmm...? never had this issue I think but then I don't know what you mean by "proper" here. Was/it is hardware//driver specific bug/problem?
It changes the screen resolution back, but any windows you had open and maximized sometimes don't get resized to fit the screen, and stay the same size that thief was running at instead. (i.e. with a desktop resolution of 1280x1024 open windows explorer and maximize it, run thief at 800x600, close it and sometimes the windows explorer window will stay at 800x600 even though the screen changed back to 1280x1024.)
Hiatus on 10/4/2008 at 20:56
Quote Posted by Timeslip
Not yet. Maybe in 1.4: It'll require another framebuffer, or you'll be limited to integer multiples of your refresh rate.
In Thief 3 there's something like that when turning Vsync on - your framerate is limited to exactly 1/3, 1/2 etc of your RR; in my case of RR=85Hz framerate is/was artificially/too low in some places/cases as a result - so in some places it's ~27 fps (1/3 of 85), in other 42/43 (1/2) etc. Do you mean sth similar here? It was on Nvidia 7xxx anyway, don't know if it behaves similarly in ATI (have Vsync off in T3 now anyway) but going to investigate it.
it took me a while to figure out why I get exactly these framerates in T3 (like why I only get constant 27 fps while starring up close at some low-res texture when my H/W was obviously capable of much more). But that is the result only, not a cause. So still up till now I've no idea why/what for they introduced such a thing - have you (maybe it's related to game being also a console title - to lower load on H/W etc)?
ps actually (forced) 2/3 divider wouldn't be so bad (2/3*85=~57 fps = close to desired 60). Are any fps (integer) offsets possible in addition to that i.e +3 fps etc?