Commit Graph
9567 Commits
Author SHA1 Message Date
Unknown W. Brackets e22cc7ef6d SoftGPU: Always clip, without special neg z case.
Depth clamping doesn't change whether it clips.  Also, avoid culling when
a vertex is behind the near plane.
2018-08-05 17:47:05 -07:00
Unknown W. Brackets cd6b1f73c1 SoftGPU: Drop verts only when depth not clamped.
Depth clamping bypasses the 4096x4096 box check.
2018-08-05 17:17:55 -07:00
Unknown W. Brackets 77f0499f7f GPU: Rename clipping flag to depth clamp.
It seems to just to depth clamp.  When depth clamp happens, it affects
clipping a little, but only for vertices that needed clamping.
2018-08-05 17:11:51 -07:00
Unknown W. Brackets 7885a88c0c GPU: Optimize > 0 alpha test using discard rules.
It should be equally unsafe to use src color as dest blend factor, or
use blending with a subtract or min/max equation.
2018-07-29 11:39:06 -07:00
Unknown W. Brackets 78dc07e7a3 Headless: Fix graphics tests for Vulkan/Direct3D.
Otherwise we hang because there's no thread to ever end.
2018-07-29 11:26:04 -07:00
Unknown W. Brackets fba0de59c1 GPU: Restrict alpha test to zero for dest blend.
We could end up with the wrong blending in other cases, because the
exiting color will get multiplied.

Luckily, this is still the common case.
2018-07-29 11:26:04 -07:00
Henrik RydgårdandGitHub a776dce593 Merge pull request #11269 from unknownbrackets/fragtest
Avoid discard when we can blend
2018-07-29 09:49:16 +02:00
Henrik Rydgård 42f4d7b40f OpenGL: Fix bug where we could end up calling glUniformMatrix without a bound program. Found by GL debug callback on NV.
This adds a bit of extra checking that's only enabled in _DEBUG builds.
2018-07-28 11:09:01 +02:00
Unknown W. Brackets 5ccd3ee4dc GPU: Allow skipping discard when write disabled.
Even if we depth test, if we don't write, we can still force alpha to
zero.
2018-07-27 20:16:51 -07:00
Unknown W. Brackets 8e49fa988c GLES: Avoid discard when we can blend.
May improve performance on PowerVR.
2018-07-27 20:06:41 -07:00
Unknown W. Brackets 5ad948df73 Vulkan: Avoid discard when we can blend.
Where possible, replace alpha and color testing with a zero alpha value.

This allows early fragment tests more often, which may help #11227.  It
may also generally help performance on PowerVR devices.
2018-07-27 20:04:36 -07:00
Henrik Rydgård a589a371e6 Update SPIRV-Cross to a fresher version. 2018-07-16 20:00:45 +02:00
Unknown W. BracketsandGitHub 82f1b72c4a Merge pull request #11254 from hrydgard/light-chan-cost
Reduce the estimated transform cost of an additional light from 10 to 7 cycles
2018-07-15 07:42:34 -07:00
Henrik Rydgård c404214042 Update glslang to latest as of 2016-06-26 2018-07-15 12:30:40 +02:00
Henrik Rydgård ea1ef9277c Reduce the estimated transform cost of an additional light from 10 to 7 cycles, see #5530. 2018-07-15 12:13:25 +02:00
weihuoya d9d9b14e53 Don't cut below 2 2018-07-05 15:29:40 +08:00
Unknown W. Brackets 0b245699bb GLES: Specify unsigned shift for Adreno bug.
Adreno 320 devices, and at least 1 Intel device, are complaining that
right shift can't be used within uint/int.

Possibly related to:
https://github.com/KhronosGroup/glslang/issues/1296
2018-06-30 09:50:02 -07:00
Unknown W. Brackets 2a13a66e18 GPU: Use hw tess only for hw transform.
This may be needed if we start using software for points/lines.
2018-06-28 19:47:33 -07:00
Unknown W. Brackets 9bac603976 GPU: Use HW transform for flat spline/bezier.
We can control the provoking vertex here, but it's less likely to matter.
2018-06-28 19:30:20 -07:00
Henrik Rydgård 1517a93d08 Restore the vertexCount to 32-bit, needed in some tesselation situations 2018-06-26 19:49:49 +02:00
xebra 4fab160e19 [spline/bezier]Modify D3D11 hwtess texture buffer to structured shader buffer. 2018-06-27 01:10:36 +09:00
xebra 5536cdd827 [spline/bezier]Fix tex coords. 2018-06-26 01:47:13 +09:00
Unknown W. Brackets 95f270778e Core: Allow toggle between 2 custom speeds.
In addition to virtual keys for each speed separately.
2018-06-23 10:59:18 -07:00
Unknown W. Brackets e2c217ab29 Core: More consistently use config enums. 2018-06-23 10:59:18 -07:00
Unknown W. Brackets b4496f1975 Core: Move config enums to separate file.
These are a bit strewn about and there are constants that aren't
consistently used, which just adds confusion.
2018-06-23 10:59:18 -07:00
Henrik RydgårdandGitHub a9da0028bb Merge pull request #11203 from unknownbrackets/savestate
Reset CPU mhz on PPSSPP reset
2018-06-23 08:59:57 +02:00
Unknown W. Brackets fd8a0612fa SaveState: Initialize some memory that is saved.
At the very least, will help them compress better.  Also good not to leak
random memory.
2018-06-22 21:29:18 -07:00
Unknown W. BracketsandHenrik Rydgård 06340bfa9c Vulkan: Workaround Adreno discard bug. (#11197)
This also explicitly enables early fragment tests when possible.  Using
conversative depth still works on Adreno and should allow some depth
optimizations.
2018-06-20 09:05:27 +02:00
Henrik RydgårdandGitHub f3ab56e15d Merge pull request #11193 from unknownbrackets/gles
Android: Allow using OpenGL 4.x with javaGL disabled
2018-06-18 10:58:39 +02:00
Unknown W. Brackets 03edd6129a GLES: Cut down on use of USING_GLES2. 2018-06-17 20:51:34 -07:00
Unknown W. Brackets bd13f6b906 Vulkan: Workaround stencil upload bug on Adreno.
We write a static depth value, which will be ignored, to force the driver
to support discard.
2018-06-17 17:50:38 -07:00
Unknown W. Brackets 9f4cd3fcdb GLES: Add missing semantics for stencil upload.
Makes #10634 work for GLES properly.
2018-06-17 17:50:38 -07:00
Unknown W. Brackets f6036195d8 GLES: Cleanup stencil upload w/h handling.
In case a buffer has been resized recently, we want to upload just the
detected drawable area, probably.  Before this was inconsistent depending
on the render resolution.
2018-06-17 17:50:38 -07:00
Henrik RydgårdandGitHub da5f0f7f2b Merge pull request #11186 from unknownbrackets/debugger
Debugger: Add APIs to retrieve render image
2018-06-17 21:53:38 +02:00
Unknown W. Brackets 80312582d1 GPU: Avoid a switch case warning. 2018-06-17 11:32:17 -07:00
Unknown W. Brackets d1fa9b97a3 GPU: Remove some unused fields. 2018-06-17 11:26:09 -07:00
Unknown W. Brackets e6917cccf6 Debugger: Add APIs to retrieve render image. 2018-06-16 15:33:02 -07:00
Unknown W. Brackets a0608d7fc5 Debugger: Allow GPU actions while stepping.
This allows pulling the display/target while paused.  It may also allow
other actions that work outside a display list.
2018-06-16 13:57:45 -07:00
Unknown W. Brackets 469d8a6a41 GPU: Screenshot output in BGRA if that's native.
This is a decent chunk faster.
2018-06-16 13:48:50 -07:00
Unknown W. Brackets c97023568c thin3d: Fix requesting BGRA buffers.
Should be fine to request BGRA->BGRA.

Also, the reverse flags were wrong/ignored on the format.
2018-06-16 13:31:08 -07:00
Henrik RydgårdandGitHub 53f0f136ac Merge pull request #11182 from unknownbrackets/postshader
GLES: Use accurate GLSL ver in postshader convert
2018-06-15 07:22:55 +02:00
Unknown W. Brackets 0d2de36258 GLES: Use accurate GLSL ver in postshader convert. 2018-06-14 20:31:58 -07:00
Henrik RydgårdandGitHub e03aeba75e Merge pull request #11171 from unknownbrackets/debugger
Fix some issues with GE dumps
2018-06-14 10:07:21 +02:00
Unknown W. Brackets 582bc2d60a GE Debugger: Stall less liberally on GE dump exec.
This makes it easier to compare performance and flushing bugs.
2018-06-11 15:14:18 -07:00
Unknown W. Brackets f7443aaa15 GE Debugger: Use a class for dump execution. 2018-06-11 15:06:40 -07:00
Unknown W. Brackets ccef997a7a GE Debugger: Fix asserts when reading debug tex.
This is unfortunate, but right now BuildTexture() applies the sampling
settings which happen within a render pass.  So we must have a render
pass.
2018-06-11 14:56:25 -07:00
Unknown W. Brackets 0ed2c03350 GE Debugger: Prevent hang on shutdown.
Since we're blocking the Emu thread, we can't use a hook from the Emu
thread to wake up.

The change to lifecycle callbacks caused this.
2018-06-11 14:54:42 -07:00
Henrik RydgårdandGitHub e98ea812f6 Merge pull request #10973 from weihuoya/cullmode
handle cull mode by indices, refer to issue #10172
2018-06-10 20:53:18 +02:00
Unknown W. Brackets 395ac32d63 Debugger: Run memory breakpoints on mobile. 2018-06-06 17:31:56 -07:00
Henrik RydgårdandGitHub 6bf6490c2f Merge pull request #11128 from unknownbrackets/gpu-minor
Minor framebuffer code cleanup
2018-06-06 22:28:35 +02:00