wheremyfoodat
0446bcdaa1
Add Metal support to Qt frontend and clean up renderer creation code ( #795 )
...
* Qt: Initial support for Metal renderer
* Clean up graphics context code
* Nits
* More nits
* Qt: Move screen-related stuff to own folder
* Qt: Make screen widget polymorphic
* Qt: Re-add Metal
* Add factory for screen widget
* Qt: Support compilation without Metal
* Qt: Fix build without Metal
* Oops
* oops
2025-07-26 23:13:08 +03:00
wheremyfoodat
8b0b1939cf
GL: Respect minimum UBO alignment requirement ( #794 )
...
* GL: Respect minimum UBO alignment requirement
* Use glBindBufferRange for UBOs
* Fix fragment shadergen UBO bindings
* Nit
2025-07-25 01:24:23 +03:00
wheremyfoodat
0815707613
GL: Use StreamBuffer for shadergen UBOs ( #793 )
...
* GL: Use StreamBuffer for shadergen UBOs
* Clean up UBO sizes
2025-07-24 23:25:34 +03:00
wheremyfoodat
4b90239ae7
Formatting fix
2025-07-06 03:04:40 +03:00
wheremyfoodat
cf321b1ed8
Better screen layout support
2025-07-06 02:41:44 +03:00
wheremyfoodat
1c0f65c740
Screen layouts: Add configurable screen sizes
2025-07-05 02:36:03 +03:00
wheremyfoodat
62748eef47
Initial screen layout implementation
2025-07-04 17:53:36 +03:00
wheremyfoodat
630952f36b
SDL/Qt: Better resizing & fullscreen support
2025-06-28 23:34:12 +03:00
wheremyfoodat
a0aa11dac0
Add optional texture hashing
2025-06-23 02:45:13 +03:00
wheremyfoodat
86ea40a9e5
GPU: Add sw texture copies
2025-01-03 21:24:46 +02:00
wheremyfoodat
59f51f7d0c
GLES: Properly stub out logic ops
2024-12-29 14:28:04 +02:00
wheremyfoodat
cb8b13e129
Support GLES on desktop
2024-12-28 19:52:42 +02:00
wheremyfoodat
7c2918f3f7
GL: Add usingGLES to driverInfo struct ( #694 )
2024-12-27 11:45:28 +02:00
wheremyfoodat
cdc61ea95a
GL renderer: Add fallback for when driver doesn't provide glDrawRangeElementsBaseVertex ( #617 )
...
* GL: Add fallback for when driver doesn't provide glDrawRangeElementsBaseVertex
* GL: Fix fallback when glDrawRangeElementsBaseVertex is absent
2024-10-23 22:43:58 +03:00
wheremyfoodat
49a94a13c5
Moar shader decompiler ( #559 )
...
* Renderer: Add prepareForDraw callback
* Add fmt submodule and port shader decompiler instructions to it
* Add shader acceleration setting
* Hook up vertex shaders to shader cache
* Shader decompiler: Fix redundant compilations
* Shader Decompiler: Fix vertex attribute upload
* Shader compiler: Simplify generated code for reading and faster compilation
* Further simplify shader decompiler output
* Shader decompiler: More smallen-ing
* Shader decompiler: Get PICA uniforms uploaded to the GPU
* Shader decompiler: Readd clipping
* Shader decompiler: Actually `break` on control flow instructions
* Shader decompiler: More control flow handling
* Shader decompiler: Fix desitnation mask
* Shader Decomp: Remove pair member capture in lambda (unsupported on NDK)
* Disgusting changes to handle the fact that hw shader shaders are 2x as big
* Shader decompiler: Implement proper output semantic mapping
* Moar instructions
* Shader decompiler: Add FLR/SLT/SLTI/SGE/SGEI
* Shader decompiler: Add register indexing
* Shader decompiler: Optimize mova with both x and y masked
* Shader decompiler: Add DPH/DPHI
* Fix shader caching being broken
* PICA decompiler: Cache VS uniforms
* Simply vertex cache code
* Simplify vertex cache code
* Shader decompiler: Add loops
* Shader decompiler: Implement safe multiplication
* Shader decompiler: Implement LG2/EX2
* Shader decompiler: More control flow
* Shader decompiler: Fix JMPU condition
* Shader decompiler: Convert main function to void
* PICA: Start implementing GPU vertex fetch
* More hw VAO work
* More hw VAO work
* More GPU vertex fetch code
* Add GL Stream Buffer from Duckstation
* GL: Actually upload data to stream buffers
* GPU: Cleanup immediate mode handling
* Get first renders working with accelerated draws
* Shader decompiler: Fix control flow analysis bugs
* HW shaders: Accelerate indexed draws
* Shader decompiler: Add support for compilation errors
* GLSL decompiler: Fall back for LITP
* Add Renderdoc scope classes
* Fix control flow analysis bug
* HW shaders: Fix attribute fetch
* Rewriting hw vertex fetch
* Stream buffer: Fix copy-paste mistake
* HW shaders: Fix indexed rendering
* HW shaders: Add padding attributes
* HW shaders: Avoid redundant glVertexAttrib4f calls
* HW shaders: Fix loops
* HW shaders: Make generated shaders slightly smaller
* Fix libretro build
* HW shaders: Fix android
* Remove redundant ubershader checks
* Set accelerate shader default to true
* Shader decompiler: Don't declare VS input attributes as an array
* Change ubuntu-latest to Ubuntu 24.04 because Microsoft screwed up their CI again
* fix merge conflict bug
2024-10-19 16:53:51 +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
Jonian Guveli
4adc50039c
Add build option for opengl profile ( #592 )
...
* Add opengl_profile build option
on android the option is set to OpenGLES by default
* Replace android checks with using_gles
2024-08-28 12:01:55 +00:00
wheremyfoodat
32ddc28789
Shadergen: Move fog colour to uniform
2024-07-25 20:18:30 +03:00
wheremyfoodat
a0e506affc
Share fragment UBO between shadergen programs
2024-07-25 19:51:29 +03:00
wheremyfoodat
e4d4a35674
Renderer GL: Add UB checks
2024-07-23 04:11:12 +03:00
wheremyfoodat
6399cb55e2
GL: Remove duplicate scissor disable
2024-07-21 23:04:44 +03:00
offtkp
b8712b37c3
A few kissable changes
2024-07-21 18:26:02 +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
Paris Oplopoios
af552edd9d
Remove dependency of PICA regs in fragment config ( #541 )
...
Remove dependency of PICA regs in fragment config
Nyom
Nyom part 2
Nyom 3: The final nyom
Nyom 4: The nyomening
Nyom 5: The final Nyom for real
2024-07-20 02:37:49 +03:00
wheremyfoodat
5c1e2912a3
Shadergen: Minimize shader compilation time by caching the default VS
2024-07-19 14:35:01 +03:00
wheremyfoodat
2f50038db9
Shadergen: Lighting almost 100% working
2024-07-18 22:56:05 +03:00
wheremyfoodat
cab30494f6
Merge pull request #531 from OFFTKP/pandra
...
Improve lighting
2024-07-18 00:38:55 +00:00
wheremyfoodat
7e480e35ec
Shadergen: Upload light uniforms
2024-07-18 03:37:11 +03:00
wheremyfoodat
ccf9693877
Shadergen: More lighting work
2024-07-18 02:57:41 +03:00
wheremyfoodat
ed00ddc805
Improve lighting register definitions
2024-07-18 00:55:57 +03:00
wheremyfoodat
d013582223
Shadergen: Optimize caching
2024-07-17 21:53:19 +03:00
wheremyfoodat
cb0e69847c
Hotfix UBO binding
2024-07-17 21:17:54 +03:00
wheremyfoodat
a4ec770587
Add UBO/BlendEquation/BlendFunc to GL state manager
2024-07-17 01:32:55 +03:00
wheremyfoodat
441aa2346c
Shadergen: Add clipping
2024-07-16 02:20:37 +03:00
wheremyfoodat
2cd50e7f37
Clean up ubershader code
2024-07-15 15:11:23 +03:00
wheremyfoodat
11c9279329
Properly flush shader cache
2024-07-15 14:30:21 +03:00
wheremyfoodat
0878474e01
Shader recompiler: Add depth mapping
2024-07-15 04:30:04 +03:00
wheremyfoodat
c8eb1c1128
Shader recompiler: Add UBO
2024-07-15 04:10:55 +03:00
wheremyfoodat
b384cb8ad9
Fix build
2024-07-15 00:13:22 +03:00
wheremyfoodat
c73758959b
Merge branch 'master' into specialized-shaders-2
2024-07-14 23:57:12 +03:00
wheremyfoodat
c4e45ee6b8
Renderer GL: Fix hotswapping shaders
2024-07-14 18:20:59 +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
4b07ebed86
Fix shader cache bypassing GL state manager
2024-03-03 01:51:45 +02:00
wheremyfoodat
e5c09a092d
Fix specialized shaders on Android
2024-03-02 23:29:22 +02:00
wheremyfoodat
fc83d518e2
Hook up specialized shaders to GL renderer
2024-03-02 22:35:56 +02:00