Commit graph

28 commits

Author SHA1 Message Date
Unknown W. Brackets
4a0109d273 GPU: Treat negative light exp same as 0.
Based on #12507 and some tests, seems like negative exponents are also
fixed to a 1.0f result.
2020-03-22 22:28:05 -07:00
Unknown W. Brackets
1c19bce514 GPU: Correct specular exponent zero. 2018-11-22 08:53:25 -08:00
Unknown W. Brackets
4816bfc1a6 GPU: Skip specular on negative diffuse factor.
This is correct per hardware tests, see #8403.  Note that the PS3 emulator
running PSP HD remasters does not correctly handle this, and applies
specular for negative diffuse factor.
2018-11-22 08:53:25 -08:00
Unknown W. Brackets
6e46d6c0f9 GPU: Correct powered diffuse with exp=0.
Just to ensure negative factors are handled too, as they are on hardware.
2018-11-22 08:53:25 -08:00
Unknown W. Brackets
1cec9f5ea1 GPU: Handle spot light with 0 exp or length. 2018-11-22 08:53:25 -08:00
Unknown W. Brackets
b2d60cb807 SoftGPU: Cleanup lighting code a bit.
Avoid using Length() when Length2() is enough, simplify some things.
2018-11-18 07:28:03 -08:00
Unknown W. Brackets
986371c633 SoftGPU: Normalize 0,0,0 as 0,0,1 for shade map.
Takes care of #4155 for software rendering.
2018-11-17 18:16:54 -08:00
Unknown W. Brackets
b2d3058386 SoftGPU: Correct fog for rectangles.
Gods Eater Burst uses fog in its bloom, with rectangles.
2017-05-13 17:27:34 -07:00
Unknown W. Brackets
1a56466865 SoftGPU: Match GLES lighting better, use floats.
Using floats simplifies things and also makes it faster.
2017-05-13 12:54:18 -07:00
chinhodado
9bd07d4c9c remove a redundant assignment 2014-02-22 23:08:26 -05:00
Unknown W. Brackets
25bc394284 Ignore the material update flag w/o vertex color.
Instead of using materialambient for all of them.

Fixes #3918, and seems to match tests with 3dstudio.
2013-12-29 12:57:30 -08:00
Unknown W. Brackets
eae6e87620 Simplify lighting clamping in softgpu. 2013-10-05 13:05:32 -07:00
Unknown W. Brackets
c3839a53e5 Fix some minor warnings. 2013-09-07 22:40:08 -07:00
Henrik Rydgard
9f3848b49c swrast warning fixes 2013-08-17 12:37:47 +02:00
Tony Wasserka
9bc3e8bf07 softgpu: Generate texture coordinates for environment mapping even if lighting is disabled altogether. 2013-08-16 23:49:13 +02:00
Tony Wasserka
f4cb929073 softgpu: Fix a lighting bug. 2013-08-16 23:49:13 +02:00
Tony Wasserka
1450157e09 softgpu: Implement environment mapping. 2013-08-16 23:49:12 +02:00
Tony Wasserka
b1a4762251 softgpu: Fix specular lighting (or rather, the dumb code that always threw away the result). 2013-08-16 23:49:00 +02:00
Tony Wasserka
fd65b7c9b8 softgpu: New try at specular lighting, still doesn't seem to work... 2013-08-16 23:49:00 +02:00
Tony Wasserka
c5544eb293 softgpu: Fix some lighting bugs. Ambient and diffuse light should be working perfectly now. 2013-08-16 23:48:59 +02:00
Tony Wasserka
41e2005ad0 softgpu: Fix various bugs.
Using model transformed normals for light calculations now.
Disabling textures if texture mapping isn't enabled now.
Forced target alpha to be written as 0xFF to workaround broken buffer management.
2013-08-16 23:48:59 +02:00
Tony Wasserka
6c1b4ba32b softgpu: Implement specular lighting. 2013-08-16 23:48:59 +02:00
Tony Wasserka
704a416baa softgpu: Implement powered diffuse lighting. 2013-08-16 23:48:59 +02:00
Tony Wasserka
0bf4956dfc softgpu: Implement per-light ambient lighting. 2013-08-16 23:48:59 +02:00
Tony Wasserka
48d75dafcb softgpu: Implement attenuation and spot factors. 2013-08-16 23:48:58 +02:00
Tony Wasserka
b42b30e795 softgpu: Store color values as integers instead of as floating points. 2013-08-16 23:48:58 +02:00
Tony Wasserka
7fdce30199 softgpu: Implement diffuse lighting. 2013-08-16 23:48:58 +02:00
Tony Wasserka
bfd9266b51 softgpu: Add support for ambient lighting. 2013-08-16 23:48:58 +02:00