Jump to content
  • Advertisement
Sign in to follow this  

VSM and ATI

This topic is 4334 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hello, I just tried my VSM implementation on an ATI and it looks much worse than on an nVidia. It seems like there is no texture filtering supported on 64 bit render targets or perhaps I am doing something wrong. I compared an X1800 with a 7900GTX. I have added a few screenshots with comparisons (the error is not very visibly here .. I should have taken better screenshots :() Screenshots can be found a bit bigger here: - overview compare bigger - Shadow ATI normal - Shadow ATI VSM - Shadow ATI VSM Blur (here error best visible) - Shadow nVidia normal - Shadow nVidia VSM - Shadow nVidia VSM Blur Both of them use the same shaders .. If this is normal I think I will try the fetch4 instruction on the ATI. Are there any samples on how to efficiently use these somewhere .. Any suggestions on this, Regards, Kenzo

Share this post


Link to post
Share on other sites
Advertisement
I can't really see the error in the ATI VSM blur image, but if I recall correctly, ATI doesn't filter floating point textures because they don't (didn't) consider that essential.

Share this post


Link to post
Share on other sites
Quote:
Original post by Guoshima
Hello,

I just tried my VSM implementation on an ATI and it looks much worse than on an nVidia. It seems like there is no texture filtering supported on 64 bit render targets(...)

That's it. Their is no filter on floating textures on ATI cards (tested on a X700 pro)

EDIT: oops , doubled...

Share this post


Link to post
Share on other sites
Those are really cool screenshots! Only Geforce 6 & 7's support 16 bit fp filtering. Some ATI hardware supports 16 bit fixed point filtering, so you should either switch to that or an integer format.

Share this post


Link to post
Share on other sites
Quote:
Original post by Guoshima
thanx for the help .. ! Any info btw on fetch4 .. has anyone used this one before already ?

Regards,
Kenzo


I belive there are samples for Fetch4 in the ATi SDK.

Share this post


Link to post
Share on other sites
Guoshima, would you mind giving a few details about your settings in those shots? What format are you using for the depth buffer, and how big is it? How many times are you blurring the depth buffer, and what kernel? I am curious because I don't see any color bleeding in your shots, and in my implemenation blurring the depth buffer just makes the bleeding worse.

Share this post


Link to post
Share on other sites
sure .. for my Dirlight VSM I am currently using 3 shadows maps. Settings are:
- size: 1024
- near: 1m
- far: 500m
- shadowbias: 0.0057
- blurscale: 0.74
- vsm epsilon: 0.00063

in this shot you don't see any bleeding, that's true, but in other scenes sometimes the bleeding becomes visible again. It really depends on the scene. Then I can play again with my parameters to remove 'm, but then it becomes visible somewhere else, so don't worry. I haven't found a good solution for this yet. Which really helped me for this was making sure my floating point values are between -1 and 1, and if possible devide over 4 channels (which I am not doing here).

Regards,
Kenzo

Share this post


Link to post
Share on other sites
Hmm .. just found out that I can't use Alpha testing on G16R16 render targets. Which is really annoying if I want to render my leaves of the trees into a shadow map. Any suggestions which format I can use then for ATI support ..

Regards,
Kenzo

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!