Open AmbientMalice opened 9 years ago
Savestate please.
I guess I found how it works: manipulation with texture format again. Auxiliary buffer has format 8bit intensity, but when game uses it as texture, texture loaded as 8bit intensity-alpha. Alpha makes the shadow translucent. I simulated this in shaders, but the shadow has strange boarder.
& too dark
Wrong intensity is a minor defect.
Does anti-aliasing have any effect on the softer shadows?
No. I think, the shadow intentionally made "hairy". It looks like this with software lle too. Dark bound problem is probably solved by proper pixel coverage emulation, which is not implemented in GLideN64. I can't explain though, why shadow itself is darker than with soft lle.
Been testing https://github.com/gonetz/GLideN64/commit/d5a0f20098b838266485d211a5781e01a18dfec1
Glide64:
GLideN64:
Angrylion's:
I'm not sure this half-fix was a good idea because it makes games that use this shadow method look really, really ugly. Even the inaccurate hard black shadows are, IMO, preferable to these harsh black fuzzing things.
I reverted my fix. Need to find another solution.
seems fixed
I believe Turok 3 uses auxiliary framebuffer for shadows, whereas Turok 2 used stencil shadows. The shadows render better than Glide64, but they're too dark.
GLideN64:
Angrylion: