Commit graph

35 commits

Author SHA1 Message Date
Henrik Rydgård
122a0fa1f6 Oops, revert debugging commit 2022-06-19 18:10:27 +02:00
Henrik Rydgård
1d17b01c16 Workaround for strange driver hang on Raspberry Pi 3.
Strangely, this does not fix the text rendering in the UI, but might
still be enough for the libretro use case in #15469.

See #15469
2022-06-19 16:56:19 +02:00
Unknown W. Brackets
275baccc5b GLES: Support GL_APPLE_clip_distance too.
Seems modern Apple mobile chips only support clip.
2021-10-12 20:34:44 -07:00
Unknown W. Brackets
5e6f54033e GPU: Split clip and cull caps.
GL_ARB_cull_distance is needed, sometimes available on older GL.
2021-10-12 20:34:43 -07:00
Unknown W. Brackets
7d00b6ca90 GLES: Enable/disable clip distance 0. 2021-10-12 20:34:42 -07:00
Unknown W. Brackets
046a5c548b GLES: Check clip/cull distance support.
Pretty limited on GLES3+.  Also D3D11.
Seems like doing it on D3D9 might be a bit tricky.
2021-10-12 20:34:42 -07:00
Unknown W. Brackets
4cb6976029 GPU: Use an empty vertex buf for reinterpret.
See #14552.
2021-08-07 22:22:36 -07:00
Henrik Rydgård
4c9b5ada0f Address feedback 2021-07-09 21:09:44 +02:00
Henrik Rydgård
df6abe83a3 Support depth clamping in OpenGL where available.
Should make support for depth texturing quite easy.

Unfortunately, this extension does not exist on OpenGL ES. There we'll
have to use ugly tricks with gl_FragDepth if we want this.
2021-07-09 21:09:44 +02:00
Unknown W. Brackets
7f8144494e Draw: Use constants for texture slots.
GL actually had a check for 16 but then an array for 8.  This should make
it easier to figure out if we ever hit those limits.
2021-06-12 14:10:57 -07:00
Unknown W. Brackets
1ca1a8bbeb Postshader: Correct sampler binding translation. 2021-06-12 10:14:44 -07:00
Unknown W. Brackets
44d2d8a2a3 Draw: Assert sampler bindings are in valid ranges. 2021-06-12 10:10:42 -07:00
Unknown W. Brackets
915265e531 Draw: Optimize GL A1R5G5B5 conversion.
This seems to be enough to trigger SIMD in x86_64 at least.
2021-05-01 11:20:05 -07:00
Unknown W. Brackets
60690109f0 GLES: Handle GLSL 1.30/1.40 better.
Was causing errors for people using older GL.
2021-04-10 13:32:13 -07:00
Unknown W. Brackets
5119d79082 Build: Remove IOS define. 2021-03-02 21:04:03 -08:00
Unknown W. Brackets
fe9870bf37 Draw: Auto ref/release bound textures/samplers. 2021-02-16 21:48:43 -08:00
Henrik Rydgård
c76fe9cec4 Assorted paranoid cleanups, inspired by #14082 2021-02-10 00:20:52 +01:00
Henrik Rydgård
7de7680416 Apple driver bug workaround. See issue #13451 2020-12-16 14:39:08 +01:00
Henrik Rydgård
2dcfa63498 GL: Detect Apple GPUs as a category 2020-12-14 22:10:18 +01:00
Henrik Rydgård
32c9728c0c Some cleanups in GL feature and shader language detection.
Gets rid of many wrong or bad checks for IsCoreContext.
2020-12-14 19:46:11 +01:00
Henrik Rydgård
6a5522b185 thin3d: Add a way to query the current render target for debugging. 2020-12-13 00:20:13 +01:00
Henrik Rydgård
29b2f2c4ef Better GLSL version handling. Now specify the latest version supported by the device.
Correct the version check for our own implementations of packUnorm4x8 etc.
2020-11-16 23:30:07 +01:00
Henrik Rydgård
5eea7435d0 Minor cleanup in GL backend, fixes #13647
Was a stray old texture in boundTextures_ in thin3d. Now makes sure to
invalidate them, and also make it possible to look up bound framebuffer
textures when checking for valid tex parameters.
2020-11-10 00:13:44 +01:00
Henrik Rydgård
9f33a82b49
Merge pull request #13646 from hrydgard/framebuffer-fetch-fixes
Framebuffer fetch fixes
2020-11-09 19:30:35 +01:00
Henrik Rydgård
69108ab2e9 On GLES3, GL_EXT_shader_framebuffer_fetch works a little differently. 2020-11-09 13:32:49 +01:00
Henrik Rydgård
2384b7a17d Remove support for NV_shader_framebuffer_fetch extension, very old and rare.
Minor refactor.
2020-11-09 13:31:39 +01:00
Henrik Rydgård
864cc54aa4 Remove ForceGL2 flag. Add comments... hm. 2020-11-09 11:18:43 +01:00
Henrik Rydgård
1ccc8c129c Reinterpret code runs, no idea if it works 2020-11-08 11:32:55 +01:00
Henrik Rydgård
6a1e669c45 Fix GLSL version detection bug. Fixes #13631 2020-11-06 21:55:16 +01:00
Henrik Rydgård
7a690f177e Move shader language feature detection to the draw context. 2020-11-06 09:11:57 +01:00
Henrik Rydgård
84037f448e Remove colorDepth property of framebuffers. They're all 8888. 2020-11-05 14:51:46 +01:00
Henrik Rydgård
6db943e831 Merge the two ShaderStage enums 2020-11-05 08:34:35 +01:00
Henrik Rydgård
207b76da6e Show an error on screen if a shader fails to compile.
Part of #1 investigation of #13541
2020-11-05 08:27:13 +01:00
Henrik Rydgård
03e8eac6ef Merge the two ShaderLanguage enums. 2020-11-04 09:40:11 +01:00
Henrik Rydgård
0e3a84b4a8 Move most GPU things to Common.
It works after the move, on Windows and Android at least.

Deletes the D3DX9 shader compiler loader, which was not used.
2020-10-04 23:39:02 +02:00
Renamed from ext/native/thin3d/thin3d_gl.cpp (Browse further)