Commit Graph

25153 Commits

Author SHA1 Message Date
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
3d20ddecc5 VK: Fix sometimes-missing images in GameScreen. Can't load textures from update(). (should probably make that possible though.. later). 2018-11-22 23:53:58 +01: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
Unknown W. Brackets
c944063d03 Reporting: Ignore link error with bad shaders.
We only need the issue reported once.
2018-11-22 07:58:08 -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
Henrik Rydgård
dc49e839dd VK: Workaround for validation bug (will be fixed in the next Vulkan SDK) 2018-11-21 22:29:21 +01:00
Henrik Rydgård
8d8c7f5d08
Merge pull request #11572 from hrydgard/preset-shader-asserts
Assert even in release mode if preset shaders fail to compile.
2018-11-21 18:57:44 +01:00
Henrik Rydgård
429a1fce01 Assert even in release mode if preset shaders fail to compile. This is just to help track down a Play crash. 2018-11-21 18:14:26 +01:00
Henrik Rydgård
f2244f789e VK: Add extra safety checks around font texture creation. Motivated by some Play crashes. 2018-11-21 17:34:54 +01:00
Henrik Rydgård
a30da4b674 Coldbird server moved, so change the default.
Should look into doing this automatically, maybe storing the coldbird
server in a config file on ppsspp.org.
2018-11-20 09:09:19 +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
Henrik Rydgård
0bf44827b7 ManagedTexture: CreateTextureFromFileData should not return a ManagedTexture object if it fails.
Alternatively, we should add even more checks around the code for empty
ManagedTextures...
2018-11-19 08:27:46 +01:00
Henrik Rydgård
fed779e21a
Merge pull request #11570 from unknownbrackets/lighting
SoftGPU: Cleanup lighting code a bit
2018-11-18 19:03:40 +01: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
Henrik Rydgård
90c2d7fb5b
Merge pull request #11569 from unknownbrackets/ge-dump
GE Debugger: Support record for more render types
2018-11-18 10:10:28 +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
Henrik Rydgård
328e367208
Merge pull request #11565 from unknownbrackets/ge-dump2
GE Debugger: Fix display event record timing
2018-11-17 23:31:24 +01:00
Henrik Rydgård
6100dca1d5
Merge pull request #11566 from unknownbrackets/vulkan-pretrans
Vulkan: Allow pre-transition from undefined
2018-11-17 23:30:48 +01:00
Unknown W. Brackets
2d3885fc1a GE Debugger: Fix display event record timing.
When the display happens mid frame, this fixes it so you can see the
result easily when running the dump, without manually stepping through.
2018-11-17 11:14:10 -08:00
Unknown W. Brackets
6383f407d1 GE Debugger: Avoid overwriting in softgpu playback. 2018-11-17 10:06:31 -08:00
Unknown W. Brackets
169d2fa444 GE Debugger: Preserve VRAM textures in dumps.
Should allow for (some) reproduction of render-to-texture behavior.
2018-11-17 10:06:31 -08:00
Unknown W. Brackets
caf5bb2789 Vulkan: Allow pre-transition from undefined.
This seems like it can happen when download/upload operations break up a
render, and happens now with dumps using the display at the right timing.
2018-11-17 10:01:38 -08:00
Unknown W. Brackets
184ae2f93c GE Debugger: Fix type conversion warning. 2018-11-17 08:57:59 -08:00
Unknown W. Brackets
6cba46bd62 GE Debugger: Fix handling for framebuf changes. 2018-11-17 08:56:32 -08:00
Unknown W. Brackets
d245e002c7 GE Debugger: Record block transfer too. 2018-11-17 08:55:54 -08:00
Unknown W. Brackets
2201c65b00 Core: Fix spurious error on Linux/Unix paths.
CreateFullPath with an absolute path would try to create ''.
2018-11-17 08:55:00 -08:00
Unknown W. Brackets
8506da14f0 Debugger: Prevent invalid address on syscall. 2018-11-17 08:54:29 -08:00
Henrik Rydgård
79d16f7b9f
Merge pull request #11560 from xebra/refactor_spline_bezier
[spline/bezier]Unify SubmitSpline/Bezier.
2018-11-13 15:24:47 +01:00
xebra
04708fe88a [spline/bezier]Unify SubmitSpline/Bezier. 2018-11-13 18:22:34 +09:00
Unknown W. Brackets
df5fbaef7e
Merge pull request #11531 from hrydgard/virtual-readbacks
WIP: Virtual readbacks
2018-11-12 09:10:59 -05:00
Unknown W. Brackets
256d5e0b07
Merge pull request #11553 from hrydgard/framebuffers-outside-vram
Remove constraint that virtual framebuffers have to represent VRAM.
2018-11-12 09:06:23 -05:00
Henrik Rydgård
32cd6dfae6 Take care of most cases of render-to-virtual-readback-buffer, I think. 2018-11-12 08:20:28 +01:00
Henrik Rydgård
6269d9b893 Support virtual readbacks for detected-memcpy framebuffer copies, delete MotoGP hack. 2018-11-12 08:20:28 +01:00
Henrik Rydgård
7abbc1bebd Add compat flag to allow virtual framebuffer readbacks (auto-create fb from readback destination). Does not yet work outside VRAM but should fix Digimon Adventure. 2018-11-12 08:20:27 +01:00
Henrik Rydgård
cf653b7631 No need for fb_normalized_address 2018-11-12 08:19:20 +01:00
Henrik Rydgård
b17fc67c45 Get rid of MaskedEqual 2018-11-12 08:19:19 +01:00
Henrik Rydgård
15f2e48887 Only mask away Z mirrors if inside VRAM 2018-11-12 08:19:19 +01:00