Are there any ways to eliminate / reduce the seam artifacts where dual paraboloid maps meet?

Started by
1 comment, last by Husbj 7 years, 10 months ago

As the title says, are there any well-known ways to reduce the quite noticible seams between the front and back maps in dual paraboloid environment mapping?

I know I can rotate the projection to try to move where the seam falls to somewhere less critical, but the fact remains that it goes around the whole projection volume like a ring so most of the time there won't even be an orientation where you can completely move the seam out of view.

Shouldn't there be some other way like maybe padding the individual maps or such, or is this just an obvious drawback to the technique as a whole?

Advertisement

I think you could do your own filtering by manually fetching the samples and lerping between neighbors. Its not fancy or as easy as using a sampler but it should work.

Hm I don't think that is what's causing the seams though. It isn't that things line up incorrectly between the hemispheres, but rather that a line of "nothingness" (the depth clear value) end up around it. The most obvious cause I can imagine is that the texels at the very edge of the projected circle blend together with the cleared outside. Since the shadow map is circular there will always be this "invalid" outline, so that's where I was thinking that maybe you could try to project a bit beyond a hemisphere and then only sample the middle 95% or something, such that you get a more proper "clamping" behaviour at the edge texels.

Another thing I thought of just now is that perhaps it would be better (if more expensive) to perform the paraboloid space transform in the pixel shader instead of the vertex shader? I imagine there will be more edges in the vertex shader approach, especially if the geometry isn't that detailed. I'm not sure if it would fix this particular issue though but it could be worth a try.

This topic is closed to new replies.

Advertisement