Henrik Rydgård
ab7bd6fc67
Merge pull request #11624 from unknownbrackets/shaderid
...
GPU: Ignore light params for shade mapping in shader id
2018-12-03 09:35:10 +01:00
Unknown W. Brackets
482487dd8d
GPU: Ignore light params for shade mapping.
...
They aren't part of the equation, so this simplifies and slightly reduces
number of shaders.
2018-12-02 14:11:19 -08:00
Henrik Rydgård
95ffa15a84
Merge pull request #11616 from unknownbrackets/debugger
...
GE Debugger: Allow jumping to a specific prim
2018-12-02 22:15:52 +01:00
Henrik Rydgård
d9cfa3a8fa
Bump shader caches
2018-12-02 21:49:20 +01:00
Unknown W. Brackets
f88dc9e821
GE Debugger: Allow relative prim counts.
2018-12-01 15:50:20 -08:00
Unknown W. Brackets
9a7ee41191
Vulkan: Avoid OpKill workaround with no stencil.
...
It seems like depth gets messed up either way on discard, but behaves
sorta better without the write to depth.
2018-12-01 14:10:47 -08:00
Unknown W. Brackets
5932cbabc3
GPU: Avoid stencil emulation if possible.
...
This reduces use of replaceAlpha, and reduces use of more complicated
blend states. This simplifies fragment shaders a little.
2018-12-01 14:05:29 -08:00
Unknown W. Brackets
d8c80afe59
GPU: Dirty stencil on stencil mask change.
...
Otherwise it doesn't always apply.
2018-12-01 14:00:32 -08:00
Unknown W. Brackets
b1e68c653c
GPU: Avoid a missing virtual destructor warning.
2018-12-01 13:59:47 -08:00
Unknown W. Brackets
e029168be2
GE Debugger: Allow jumping to a specific prim.
...
This will make the most sense when frames are relatively stable, and works
great for GE dumps.
2018-12-01 06:40:27 -08:00
Unknown W. Brackets
4d5c8fcff4
GE Debugger: Track a counter of prims.
2018-12-01 06:26:35 -08:00
Henrik Rydgård
571ea0eec5
Merge pull request #11614 from unknownbrackets/headless
...
Headless: Allow startup using NULL draw context
2018-12-01 12:47:52 +01:00
Unknown W. Brackets
6d8b78f523
Headless: Allow startup using NULL core.
...
Or maybe we should have a dummy Draw context...
2018-11-30 17:45:54 -08:00
Unknown W. Brackets
7b815af331
GPU: Force use of indexes on cull mode flip.
...
Since we flip in the index, it can't be pure in this case.
2018-11-30 07:22:28 -08:00
Unknown W. Brackets
d3db565344
GPU: Maintain a bit more state in inner-prim loop.
...
Trying to make dumps properly trigger this optimization, but they still
sometimes get flattened and don't.
2018-11-29 19:28:10 -08:00
Unknown W. Brackets
1517d66d4e
GPU: Properly flip cull on simple triangle lists.
...
Fixes #11601 .
2018-11-29 19:03:38 -08:00
mrfixit2001
53e6fbadf4
fix ifdef vs if defined
2018-11-26 16:02:25 -05:00
mrfixit2001
0ab6c59fbe
Avoid possible compile error: conflicting defs
...
In some cases, depending on the build flags, these two lines can be actively compiled at the same time, resulting in a conflicting definitions error:
https://github.com/hrydgard/ppsspp/blob/master/GPU/Common/DrawEngineCommon.h#L41
https://github.com/hrydgard/ppsspp/blob/master/GPU/Common/TextureDecoder.h#L88
I believe all that's necessary here is to add these "or" clauses to avoid it and safeguard against the error.
2018-11-26 14:59:14 -05:00
Henrik Rydgård
d08a2eed6d
Merge pull request #11594 from unknownbrackets/cullmode
...
GPU: Correctly flush on cull mode change
2018-11-26 09:29:15 +01:00
Henrik Rydgård
a3bf2ee626
Merge pull request #11597 from unknownbrackets/softgpu-texmtx
...
SoftGPU: Calculate texcoords in transform
2018-11-26 09:28:44 +01:00
Unknown W. Brackets
3c5455f85b
SoftGPU: Calculate texcoords in transform.
...
No need to do it in rasterization, and should be faster to do it on the
verts, anyway. This fixes the software issue of #11595 , presumably
because of the w handling.
2018-11-25 19:19:11 -08:00
Unknown W. Brackets
1f898e3b70
GPU: Correctly flush on cull mode change.
...
Fixes #11593 and fixes #11591 .
2018-11-25 16:56:39 -08:00
Henrik Rydgård
c5c1c46f38
Attempt to fix glsl depal error reported in #11588 (ATI/AMD)
2018-11-25 11:33:02 +01:00
Unknown W. Brackets
c2e7263601
D3D11: Correct shader bounds apply.
2018-11-24 10:51:47 -08:00
Unknown W. Brackets
fd97d82c71
D3D9: Correct shader bounds apply.
...
Also, use triangle strip like D3D11.
2018-11-24 10:47:49 -08:00
Unknown W. Brackets
d9510f8824
D3D11: Allow shader blend to self.
...
It was forcing from black before. See #9616 .
2018-11-24 10:19:28 -08:00
Unknown W. Brackets
e664e1c1dd
SoftGPU: Oops, properly apply pixel mask in 16-bit.
2018-11-23 07:57:39 -08:00
Henrik Rydgård
4942c52f73
Merge pull request #11172 from weihuoya/cullface
...
handle cullface, help to #10597
2018-11-23 09:56:17 +01:00
Henrik Rydgård
c1e1076c68
Merge pull request #11577 from unknownbrackets/lighting
...
Correct provoking vertex for lighting when flat shading
2018-11-23 09:32:16 +01:00
Unknown W. Brackets
529efded1c
GE Debugger: Fix display of raw normals.
2018-11-22 17:53:36 -08:00
Unknown W. Brackets
cd6783fa0d
GPU: Use provoking normal for lighting with flat.
...
This might interact strangely with skinning of texture matrix mapping, but
they're not likely to be used together.
2018-11-22 17:52:14 -08:00
Unknown W. Brackets
11a8857a7e
SoftGPU: Correct clipping for flat shading.
...
It needs to use the provoking color, regardless of culling or clipping.
Fixes Blade Dancer lighting (see #4140.)
2018-11-22 17:48:55 -08:00
Henrik Rydgård
c789c34274
Merge pull request #11575 from unknownbrackets/texture-self
...
GLES: Fix render-to-self detection
2018-11-22 20:05:16 +01:00
Henrik Rydgård
d9493009c7
Merge pull request #11574 from unknownbrackets/lighting
...
Correct various light param issues based on tests
2018-11-22 20:04:46 +01:00
Unknown W. Brackets
87085d18f0
GLES: Fix render-to-self detection.
...
Was broken by the recent fb_address changes, so match Vulkan and D3D11
for consistency.
2018-11-22 09:26:12 -08: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
9a4cd5bd9d
GPU: Skip specular on powered diffuse.
...
Matches hardware tests and improves lighting for Virtua Tennis, see #4140 .
2018-11-22 07:59:56 -08:00
Henrik Rydgård
442b57033f
Attempt to fix the last very common issue of #11493 by being paranoid
2018-11-21 22:40:54 +01:00
Unknown W. Brackets
10fa20cb06
SoftGPU: Fix pixel mask on rectangle clear.
...
Oops, had inverted it. This caused it to improperly clear when masked.
2018-11-19 06:15:55 -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
Henrik Rydgård
ccc4e2e9ca
Merge pull request #11567 from unknownbrackets/lighting
...
Correct shade mapping when light pos is all zeros
2018-11-18 10:15:41 +01:00
Unknown W. Brackets
3cf3985c8d
GE Debugger: Support record for more render types.
...
This should handle both games that use display, and games that don't.
2018-11-17 22:12:45 -08:00
Unknown W. Brackets
179514e8d7
GE Debugger: Avoid writing 0 sized packets.
...
This causes errors on allocation sometimes due to things like count=0 in a
prim command.
2018-11-17 22:01:14 -08:00
Unknown W. Brackets
0c5c776bb9
GPU: Correct shade mapping with 0,0,0 light pos.
...
May need to audit more normalize() usage, if it's consistent in other
places.
2018-11-17 18:33:07 -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
6600896312
GPU: Fix shade mapping in soft transform.
...
Was using invalid values when lighting was off.
2018-11-17 18:05:32 -08:00
Henrik Rydgård
036556c371
Merge pull request #11564 from unknownbrackets/ge-dump
...
GE Debugger: Preserve VRAM textures / render-to-texture in dumps
2018-11-17 23:32:20 +01:00