Reflective water in Dx8/8.1

  • Thread starter Thread starter f1gm3nt3d
  • Start date Start date
F

f1gm3nt3d

Guest
I'm sure some of you may have heard about a mod back in december that claimed to give reflective dx9 water in dx8/8.1 mode. Well it did, the problem was it was done through a material that only got referenced in a testmap included with the modand not in Hl2. Well I ran across this mod today and decided to modify the watershaders for the HL2 Vanilla game and see if it would work for that. Well it did and you can download it here: http://home.ripway.com/2005-1/253912/Hl2DX8ReflectiveWater.rar

Want proof?

Before:
dx8noref2wv.jpg


After:
dx8reflections6co.jpg


Yes it's in directX 8. Not a big deal but I thought maybe some of those with older FXes(I have a 5900) and Radeons might appreciate it. The hit on fpses isn't too bad normally though that depends on how many enemies are around at the time. That and my system isn't all too great either.
 
Nice! I got the DX8 patch (have FX5600) but didn't work, prolly for the reason you gave. Doesn't the FX5900 support DX9? Reason I ask is I'm thinking of an upgrade but it's either a 6800 or a 5900 + some much-needed new memory. That's all I can afford right now.

Does this DX8 patch only work for the water, or can the shiny Myrmidon skin be seen too?
 
Well technically the 5900 and actually all FXes support Dx9. HL2 makes them run in Dx8.1 mode though because they wrote their shaders in 24bit precision mode which the FXes don't have, so the FXes end up running everything in 32bit precision mode which actually wastes cpu cycles on the cards GPU. This why Radeon based cards run HL2 better on a lower card because they support 24bit precision natively. This is how Valve programmed HL2's shaders. I plan on re-writing the shaders specifically for the FXes that I can once they release whatever compiler they used for their shaders. I'd go with the 6800 FX if I were you cause even though I get around ~60 fps when no enemies are around, drops quickly with enemies, which leads me to beleive the problem is more with my XP2000 Cpu. So eh. The 6800 is a better choice because thats more future proofing then just a 5900 and more ram, unless you only have 128 or even 256MB of ram. Just my opinion though.

Myrmidon? The Air thing? As far as I know thats a specular map on the texture. I'll check on it. I get all that stuff anyways in 8/8.1, the shiny floors light glare off of tiles, ect. Your card may not have the right extensions, other then that it should work. IT doesn't do the normal maps on models if thats what your asking thats a dx9 feature for the engine, though once again when valve releases whatever it is they compile their shaders with for the engine I could write an 8/8.1 Normal mapping prog for the game, though that'll really kill the frame rate, I think.
 
The Myrmidon is the giant antlion with the bugbait. I remember some Radeon owner saying it had some nifty skin fx that only appeared under DX9.

If the 6800 still won't render the DX9 fx natively I think I'll stick with the 5900 for money reasons. I need some cash left over for memory for mapping. I look forward to these patches though. The reflective water patch is cool. I'd just like a better res while playing than 1024x768 and more memory would get rid of the occasional stuttering I get when passing from one vis area to another. Dunno what my FPS is, but it's always playable so it must be ~30 at the very minimum.

As for normalmapping on models, I can live without this for the time being.

Thx for clearing all that up.
 
No I think the 6800 does do Dx9 natively in Hl2. It's just the 5XXX series of Geforce that doesn't. Yea, the AntLion, I know what you're talking about and as far as I can tell it looks exactly the same except for the normal mapping. That is the -=only=- difference between Dx8 and Dx9 besides the reflective water. It's also looking as if I can just define the normal mapping in material files also without having to program a seperate 8.1 shader. Though it might not work with people who don't have pixel and vertex shader 2.0 support. This is the same with the water though too, your card has to support pxiel shader 2.0 in order for the water to work.
 
Hm ok. I'm more concerned about FPS and memory than normalmapping, though the reflective water is a definite must-have. Think I'll wait until 6800s come down in price a little, or I suddenly inherit a small fortune that'll get me an Alienware rig with dual PCI Express 6800s :farmer:
 
f1gm3nt3d said:
No I think the 6800 does do Dx9 natively in Hl2. It's just the 5XXX series of Geforce that doesn't.

yeh the 6800 series works perfect with Dx9 in hl2
 
Heh, yea, I want that alienware rig too. Read an interview on it in Maximum PC last month, maybe I can get a 2nd mortgage. ;)
 
Hey that reflective water looks ace. Just tried it out. The water looks more 'watery'. No noticeable performance issues either.
 
Hey glad you enjoyed it. I just thought it was sucky that valve didn't include the option to begin with, although there are a few good and a few not so good reasons. As I said earlier I think this is just hack that runs the 2.0 pixel shader on 8/8.1 render path, which is perfectly reasonable and understandable as long as you have directX 9 installed. But it's not like they couldn't have enabled it to work this way in the options if they wanted, when you select simple reflections vs. reflect world, vs. reflect all(without this mod absolutely nothing changes when you change those values). Simple reflections would use the normal directx 8 water and the other options would run the reflective 2.0 water. One good reason I suppouse why they wouldn't do this is that true directx 8/8.1 ONLY cards probably don't have 2.0 support but then why not just grey out the options if it's a true Dx8/8.1 card(like they did for the DXlevel option)? I could be wrong but it seems logical. :)
 
Back
Top