Commit graph

90 commits

Author SHA1 Message Date
wheremyfoodat
cc2825e436
Merge branch 'master' into shader-decomp 2024-10-19 16:01:43 +03:00
wheremyfoodat
fa9ce5fc70
GLES: Implement logic ops via fb fetch (#608)
* GLES: Implement logic ops via fb fetch

* Attempt to fix deprecated libglx-mesa0 package

* Update Qt_Build.yml

* GLES: Enable fb fetch instead of requiring it

* GLES: Add support for GL_ARM_shader_framebuffer_fetch

* Fix GL_EXT_shader_framebuffer_fetch behavior
2024-10-14 00:17:24 +03:00
wheremyfoodat
e3252ec4ef HW shaders: Avoid redundant glVertexAttrib4f calls 2024-10-05 21:14:40 +03:00
wheremyfoodat
e332ab2e58 Fix control flow analysis bug 2024-09-03 01:59:58 +03:00
wheremyfoodat
37a43e245f HW shaders: Accelerate indexed draws 2024-08-25 19:23:15 +03:00
wheremyfoodat
5432a5a0d8 Get first renders working with accelerated draws 2024-08-25 17:15:46 +03:00
wheremyfoodat
33e63f7d7a GPU: Cleanup immediate mode handling 2024-08-25 16:02:54 +03:00
wheremyfoodat
e34bdb6841 Add GL Stream Buffer from Duckstation 2024-08-25 01:49:39 +03:00
wheremyfoodat
e13ef42b65 PICA: Start implementing GPU vertex fetch 2024-08-21 00:51:18 +03:00
wheremyfoodat
67ff1ccb8b Shader decompiler: Get PICA uniforms uploaded to the GPU 2024-07-26 14:28:48 +03:00
wheremyfoodat
d9f4f3736f Shader Decompiler: Fix vertex attribute upload 2024-07-26 00:21:26 +03:00
wheremyfoodat
efcb42af2c Shader decompiler: Fix redundant compilations 2024-07-25 23:36:22 +03:00
wheremyfoodat
69accdec54 Merge branch 'master' into shader-decomp 2024-07-25 22:27:15 +03:00
wheremyfoodat
a0e506affc Share fragment UBO between shadergen programs 2024-07-25 19:51:29 +03:00
wheremyfoodat
2f4c169cad Hook up vertex shaders to shader cache 2024-07-25 04:04:41 +03:00
wheremyfoodat
90f411889b Renderer: Add prepareForDraw callback 2024-07-24 23:23:24 +03:00
offtkp
4176a19256 Fog in ubershader 2024-07-21 17:38:07 +03:00
wheremyfoodat
f219432c6a Renderer GL: Don't leak shader/UBO handles 2024-07-20 23:18:52 +03:00
wheremyfoodat
69c79a7f6c Ubershader: Add lighting shadergen override 2024-07-20 03:40:50 +03:00
wheremyfoodat
5c1e2912a3 Shadergen: Minimize shader compilation time by caching the default VS 2024-07-19 14:35:01 +03:00
wheremyfoodat
cab30494f6
Merge pull request #531 from OFFTKP/pandra
Improve lighting
2024-07-18 00:38:55 +00:00
wheremyfoodat
aad7bb817e Add setting for ubershaders 2024-07-17 02:25:38 +03:00
wheremyfoodat
2cd50e7f37 Clean up ubershader code 2024-07-15 15:11:23 +03:00
wheremyfoodat
c8eb1c1128 Shader recompiler: Add UBO 2024-07-15 04:10:55 +03:00
wheremyfoodat
c73758959b Merge branch 'master' into specialized-shaders-2 2024-07-14 23:57:12 +03:00
wheremyfoodat
186fd3b94b Qt: Shader editor now works 2024-07-14 16:06:52 +03:00
wheremyfoodat
d87477832b Qt: Initial shader editor support 2024-07-14 15:32:26 +03:00
offtkp
a3886a948f Switch to GL_TEXTURE_2D for lighting LUT 2024-07-09 20:51:09 +03:00
wheremyfoodat
842943fa4c GLSL shader gen: Add alpha test (...half of it I guess) 2024-05-13 00:51:40 +03:00
wheremyfoodat
67fe3214fe Add shader cache 2024-03-02 20:41:23 +02:00
wheremyfoodat
fdfb012aa1 GL: Add RendererGL::getSpecializedShader 2024-02-29 01:28:00 +02:00
wheremyfoodat
ef2467bc60 TEV definitions for shader generator 2024-01-18 02:59:29 +02:00
wheremyfoodat
e900e9d614 Add Renderer::deinitGraphicsContext 2023-10-25 22:46:45 +03:00
offtkp
b5b94a3526 Add some renderer related helper functions in emulator and renderergl 2023-10-20 02:59:53 +03:00
wheremyfoodat
5155682e0f Get emulator rendering working with Qt 2023-10-01 01:28:08 +03:00
wheremyfoodat
7bbf37bb63 Implement reading texture from NULL 2023-08-18 16:19:54 +03:00
wheremyfoodat
9e529d73f4 Partially revert depth/color buffer cache bump 2023-08-07 00:01:23 +03:00
GPUCode
82d9511993 gpu: Implement basic texcopy
* Improves rendering in FE:A but the screens will still not show
  because it requires surface validation
2023-08-06 14:43:30 +03:00
wheremyfoodat
9695b57bf5 [PICA] Rework how external registers work, format 2023-08-04 00:42:11 +03:00
GPUCode
f75a23b5a9 code: Better screen support 2023-08-02 22:26:08 +03:00
wheremyfoodat
64fa970468 [GL] Actually implement logic ops 2023-07-27 21:57:50 +03:00
GPUCode
6f7874227c renderer_gl: Implement logic op 2023-07-26 22:08:20 +03:00
wheremyfoodat
95a8917589 renderer_gl: Implement stencil testing 2023-07-26 22:05:30 +03:00
Wunkolo
b048d4dd6e Add SDL_Window to initGraphicsContext prototype
This value is needed for vulkan to properly allocate a surface, and would benefit OpenGL to move more of its initialization code into here rather than in `emulator.cpp`.
2023-07-22 13:16:23 -07:00
Wunkolo
b10e69de0e Add virtual deconstructor override
Virtual classes need to override the base-type deconstructor so that they are proper called when referred to by their base-type.
2023-07-17 09:30:12 -07:00
wheremyfoodat
7b6cd90d36 Cleanup for #98 2023-07-15 04:56:43 +03:00
Wunkolo
2f45714240 Add override-specifier to renderer implementation 2023-07-11 11:28:06 -07:00
Wunkolo
666fd96e7f Move color/depth format and size to Renderer interface
The state of these values are not specific to any rendering backend and
can be moved to be part of the interface itself
2023-07-11 11:28:06 -07:00
Wunkolo
c53080b444 Fix HTTPServer gpu-renderer interfacing
Fixing some compilation issues that occur when enabling the HTTP server
2023-07-11 11:28:06 -07:00
Wunkolo
2a1683ba62 Introduce "Renderer" abstraction layer
Adds a `renderer` class for which a rendering backend must implement and
will conditionally use OpenGL in the case that `ENABLE_GL` is enabled.
2023-07-11 11:27:35 -07:00