Commit Graph

75 Commits

Author SHA1 Message Date
Unknown W. Brackets
af58577aff GPU: Better typesafety for shader bits.
See 128c0ad.
2019-02-16 06:54:56 -08:00
Unknown W. Brackets
f8ce9b08ba Vulkan: Limit stencil workaround to Adreno 5xx. 2018-12-23 14:11:57 -08:00
Unknown W. Brackets
1f594f3fb5 GPU: Track draw in shader manager.
With device restore etc. everywhere.
2018-12-23 12:55:37 -08:00
Henrik Rydgård
d9cfa3a8fa Bump shader caches 2018-12-02 21:49:20 +01:00
Henrik Rydgård
22c066515e
Merge pull request #11425 from xebra/refactor_spline_bezier
[Refactoring] Improve spline/bezier.
2018-11-04 17:04:29 +01:00
Unknown W. Brackets
40ca49d0e3 GPU: Cancel shader preload on shutdown/lost.
Otherwise, we could've ended up with shaders loading after or during the
lost event, and dense hash map corruption.
2018-10-30 20:32:12 -07:00
xebra
89786b943d [spline/bezier]Instanced rendering for B-Spline is very slow when using weak GPU, so disabled it and simplify the shaders.
Add changing the quality of HW tessellation.
2018-10-07 23:54:22 +09:00
xebra
d4a667397c [spline/bezier]Improve shader uniforms a bit. 2018-10-07 23:54:10 +09:00
xebra
3c0fb44f2e [spline/bezier]Improve hwtess to use cached weights. 2018-10-07 23:54:05 +09:00
xebra
1b076f8324 [spline/bezier]Improve HW tess on Opengl to combine 3 textures into a single texture and use it. 2018-10-07 23:54:03 +09:00
Unknown W. Brackets
4a5320ed7d GLES: Refactor out duplicate code. 2018-09-20 20:40:32 -07:00
Unknown W. Brackets
52baec21a8 GPU: Refactor cull range calculation together. 2018-09-17 22:27:25 -07:00
Unknown W. Brackets
639a3f406d D3D9: Implement vertex range culling. 2018-09-17 07:27:26 -07:00
Unknown W. Brackets
ab3a466621 GLES: Implement vertex range culling.
Based on tests, skips triangles with any point outside the 4096x4096 box,
except when depth clamping would engage.
2018-09-17 07:27:26 -07:00
Unknown W. Brackets
797327eecd GPU: Handle bad fog params as large signed vals.
From tests, it seems they're just treated as valid exponents.

Using 65535 since that's the range of depth, can't think of a game using a
larger value for a fog parameter, probably never even this large.
2018-09-10 00:28:02 -07: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
Henrik Rydgård
1c17373039 GLES: Properly restore the pointer to the render manager in more places 2018-05-29 23:07:22 +02:00
Henrik Rydgård
fb7a63bd11 Implement shader depal for GL as well, but disabled by default. 2018-04-13 20:00:14 +02:00
Henrik Rydgård
36fd2711d6 Revert "Remove further remains of hardware skinning."
This reverts commit 40db61a680.
2018-04-10 12:22:41 +02:00
Henrik Rydgård
1c99ebcbcc Fix DecFmt bug 2018-04-10 12:12:47 +02:00
Henrik Rydgård
6a90b8fbb4 Revert "Further cleanup after the removal of hardware skinning."
This reverts commit f086a0915f.

Increment the shader cache version. Restore some more.
2018-04-10 11:38:02 +02:00
Henrik Rydgård
9761d8930d Bump GL shader cache version 2018-03-17 02:01:11 +01:00
Henrik Rydgård
6858c77612 Don't allow wrapping on framebuffer textures. Fixes GTA on old NV Shield 2018-03-17 01:54:11 +01:00
Carlos Estrague / Mrc_munir
f3040949a3
Fix a typo extra " in some header
Fix a typo introduced in https://github.com/hrydgard/ppsspp/pull/10715
2018-03-13 20:16:41 +01:00
Henrik Rydgård
a0fa199ce3
Merge pull request #10715 from unknownbrackets/loading
UI: Show more detailed loading status
2018-03-13 10:44:07 +01:00
Unknown W. Brackets
88e01c7944 UI: Show more detailed loading status.
It's sometimes taking longer, so this may make it easier to identify.

See #10673.
2018-03-12 18:06:46 -07:00
Henrik Rydgård
d8651fd85b Combine the lightAngle and spotCoef float uniforms into one float2. Saves 64 bytes from the light uniform buffer, making it an even 512.
Probably a very small perf optimization.
2018-03-12 11:17:45 +01:00
Henrik Rydgård
40db61a680 Remove further remains of hardware skinning. Fixes #10661 2018-03-05 00:03:47 +01:00
Unknown W. Brackets
3380ab8705 GLES: Keep the GLRShader desc around.
This way we can also log it on link errors.  It's not much data.
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
48a07474f8 GLES: Avoid using failed depal shaders if possible.
Better to have one totally broken frame than all totally broken frames.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
ccdb4d186d gl-render-manager: Fix HW tesselation. Remove 1D texture support, likely no benefit. 2018-01-27 15:10:17 +01:00
Henrik Rydgård
b7f4f6e157 GL render manager: Improve shader error reporting. 2018-01-27 15:10:17 +01:00
Henrik Rydgård
51f467a7b3 Kill off the GL state cache 2018-01-27 15:10:17 +01:00
Henrik Rydgård
376d92fcc9 Start messing with the draw engine... 2018-01-27 15:10:17 +01:00
Henrik Rydgård
9340260802 Finish the shader manager (almost) 2018-01-27 15:10:17 +01:00
Unknown W. Brackets
c5897a1c5c GPU: Cleanup some feature flags usage. 2017-12-21 18:50:41 -08:00
Unknown W. Brackets
9f000ddf35 GLES: Avoid hanging while precompiling shaders.
We want to continue updating the screen so it doesn't seem frozen.
2017-12-03 11:30:00 -08:00
Unknown W. Brackets
681ce953ec GLES: Log shader cache filesize error better. 2017-12-02 10:20:44 -08:00
Unknown W. Brackets
e50ec2c350 GLES: Validate shader cache filesize on preload. 2017-12-02 09:14:19 -08:00
Unknown W. Brackets
4731a2918c GPU: Use more typesafe shader IDs.
Since they really are fairly distinct, let's make sure we can't mix them
accidentally.
2017-12-02 09:07:27 -08:00
Henrik Rydgård
a67357db05
Merge pull request #10223 from unknownbrackets/minor
Reporting: Use a different link message on preload
2017-12-01 20:28:37 +01:00
Unknown W. Brackets
2a540de329 Reporting: Use a different link message on preload.
May help us determine if this only happens from a corrupt cache.
2017-12-01 11:17:51 -08:00
Henrik Rydgård
8a58b768f1 Check for HW-transform and through when loading GL shader cache. 2017-12-01 11:32:16 +01:00
Henrik Rydgård
24e5fbc115
Merge pull request #10215 from unknownbrackets/minor
Improvements for things found in reporting
2017-12-01 00:54:39 +01:00
Unknown W. Brackets
e0ccbd31b6 GLES: Report shader errors with shader desc. 2017-11-30 15:34:29 -08:00
Henrik Rydgård
7b2ad5fe72 Add some debug asserts, useful for debugging shader mismatches locally (though haven't found any..) 2017-12-01 00:28:07 +01:00
Henrik Rydgård
3e011238c5 Fix minor discrepancy in shader ID calculation, I don't think this will fix anything though. Bumping shader cache version and doing minor cleanup too. 2017-11-30 22:44:39 +01:00
Henrik Rydgård
2c86217552 Cleanup GPU vendor detection a bit, use it to avoid the issue mentioned in #9545 2017-11-21 16:19:28 +01:00
Henrik Rydgård
33d3d2f178 GL: Compute "availableUniform" when generating shaders instead of by querying. 2017-11-19 11:25:31 +01:00
Henrik Rydgård
32df9e25da GL: Compute the attrMask while generating the vshader instead of querying.
This will help in the future when we defer GL rendering like we did Vulkan - we will be able to use uniforms, but we won't be able to react to the result of these queries immediately.

Also slightly faster though noone will notice.
2017-11-19 11:24:32 +01:00