Page 1 of 1

Pass spheremap coords to fragment shaders

Posted: Sun Nov 01, 2020 6:39 am
by Marisa the Magician
After struggling for a long time to implement a proper matcap shader in GZDoom, I've come to the conclusion that it is ENTIRELY IMPOSSIBLE to do it with the limited information available, and any approximations only end up looking horribly broken.

main.vp seems to have this data, but it just stays there unless SPHEREMAP is defined (what for, I wonder). I absolutely need this.

Alternatively. We are provided with a view space "eye normal", but we don't have an "eye direction" equivalent.

Re: Pass spheremap coords to fragment shaders

Posted: Sun Nov 01, 2020 7:30 am
by Graf Zahl
SPHEREMAP is only set by the shader for the mirror overlay.

There's one problem with this suggestion: We cannot preemptively pass around too much data in the shader, especially data that's normally not needed. This can become very costly on older hardware.