I've noticed a lot of shimmering coming from shading, especially from specular and environment maps used together with normal maps, and I really really want to fix it some way.
The best solution I found on topic is this (because of simplicity and low performance hit): http://blog.selfshadow.com/2011/07/22/specular-showdown/
These Toksvig maps gave me kind of acceptable results with blinn-phong:
Without: http://oi48.tinypic.com/mlmfia.jpg
With: http://oi49.tinypic.com/346vnvd.jpg
However, I'm still struggling with getting them work with cubemaps. Original Toksvig paper has a little advice, saying "This effect can be modeled by computing lod for the environment map as a function of log2(some_greek_letter)", but it's not really helpful.
Anyway, we can vary the size of specular highlights, but we are still a bit limited with envmaps, because we only have a discrete number of mips and a linear interpolation between them - and I think, this limitation can break some theory behind Toksvig AA (or maybe I'm wrong).
I tried different ways to use Toksvig factor in texCUBElod, but no success, I have either aliasing or everything is just totally blurred.
Aliased: http://oi46.tinypic.com/2961zlv.jpg
(1-Toksvig)*numMips as lod: http://oi47.tinypic.com/344fm6v.jpg
And here is the best version, just brutally supersampled cubemap inside shader (11 fetches): http://oi46.tinypic.com/1679sf7.jpg
But it's a huge performance hit!
Is it possible to get that supersampled quality, only exploiting mips and not relying on heavy amounts of fetches?
Thanks in advance.






