Subv
|
f33e406ff2
|
GPU: Corrected the size of the MUFU subop field, and removed incorrect "min" operation.
|
2018-06-30 14:48:25 -05:00 |
|
bunnei
|
50ef2beb58
|
Merge pull request #595 from bunnei/raster-cache
Rewrite the OpenGL rasterizer cache
|
2018-06-29 14:07:28 -04:00 |
|
bunnei
|
c18425ef98
|
gl_rasterizer_cache: Only dereference color_surface/depth_surface if valid.
|
2018-06-29 13:08:08 -04:00 |
|
bunnei
|
7fa9177830
|
gl_shader_decompiler: Add a return path for unknown instructions.
|
2018-06-27 01:14:34 -04:00 |
|
bunnei
|
1dd754590f
|
gl_rasterizer_cache: Implement caching for texture and framebuffer surfaces.
gl_rasterizer_cache: Improved cache management based on Citra's implementation.
gl_surface_cache: Add some docstrings.
|
2018-06-27 00:15:44 -04:00 |
|
bunnei
|
8af1ae46aa
|
gl_rasterizer_cache: Various fixes for ASTC handling.
|
2018-06-27 00:08:04 -04:00 |
|
bunnei
|
c7c379bd19
|
gl_rasterizer_cache: Use SurfaceParams as a key for surface caching.
|
2018-06-27 00:08:04 -04:00 |
|
bunnei
|
3f9f047375
|
gl_rasterizer: Implement AccelerateDisplay to forward textures to framebuffers.
|
2018-06-27 00:08:03 -04:00 |
|
bunnei
|
ff6785f3e8
|
gl_rasterizer_cache: Cache size_in_bytes as a const per surface.
|
2018-06-27 00:08:03 -04:00 |
|
bunnei
|
9f2f819bb6
|
gl_rasterizer_cache: Refactor to make SurfaceParams members const.
|
2018-06-27 00:08:03 -04:00 |
|
bunnei
|
5f57ab1b2a
|
gl_rasterizer_cache: Remove Citra's rasterizer cache, always load/flush surfaces.
|
2018-06-27 00:08:03 -04:00 |
|
bunnei
|
10422f3c18
|
gl_rasterizer: Workaround for when exceeding max UBO size.
|
2018-06-26 23:07:34 -04:00 |
|
bunnei
|
dfac394e60
|
Merge pull request #593 from bunnei/fix-swizzle
gl_state: Fix state management for texture swizzle.
|
2018-06-26 22:05:49 -04:00 |
|
bunnei
|
73de9bab1a
|
Merge pull request #592 from bunnei/cleanup-gl-state
gl_state: Remove unused state management from 3DS.
|
2018-06-26 22:05:03 -04:00 |
|
bunnei
|
8447d20a11
|
gl_state: Fix state management for texture swizzle.
|
2018-06-26 17:15:58 -04:00 |
|
bunnei
|
20b58bab9c
|
gl_state: Remove unused state management from 3DS.
|
2018-06-26 17:09:25 -04:00 |
|
bunnei
|
41b3725d28
|
gl_rasterizer_cache: Fix inverted B5G6R5 format.
|
2018-06-26 17:07:36 -04:00 |
|
bunnei
|
36dedae842
|
Merge pull request #554 from Subv/constbuffer_ubo
Rasterizer: Use UBOs instead of SSBOs for uploading const buffers.
|
2018-06-26 10:25:56 -04:00 |
|
Subv
|
a3d82ef5d9
|
Build: Fixed some MSVC warnings in various parts of the code.
|
2018-06-20 11:39:10 -05:00 |
|
bunnei
|
7a0bb406d5
|
Merge pull request #574 from Subv/shader_abs_neg
GPU: Perform negation after absolute value in the float shader instructions.
|
2018-06-18 22:24:57 -04:00 |
|
Subv
|
38989bef43
|
GPU: Perform negation after absolute value in the float shader instructions.
|
2018-06-18 19:56:29 -05:00 |
|
Subv
|
eab7457c00
|
GPU: Don't mark uniform buffers and registers as used for instructions which don't have them.
Like the MOV32I and FMUL32I instructions.
This fixes a potential crash when using these instructions.
|
2018-06-18 19:50:35 -05:00 |
|
bunnei
|
0e13d9cb7b
|
Merge pull request #570 from bunnei/astc
gl_rasterizer: Implement texture format ASTC_2D_4X4.
|
2018-06-18 19:08:49 -04:00 |
|
bunnei
|
ea080501fb
|
Merge pull request #571 from Armada651/loose-blend
gl_rasterizer: Get loose on independent blending.
|
2018-06-18 11:36:50 -04:00 |
|
Jules Blok
|
7c7f4a9be2
|
gl_rasterizer: Get loose on independent blending.
|
2018-06-18 09:27:06 +02:00 |
|
bunnei
|
61779fa072
|
gl_rasterizer: Implement texture format ASTC_2D_4X4.
|
2018-06-18 01:56:59 -04:00 |
|
bunnei
|
fe906fff36
|
gl_rasterizer_cache: Loosen things up a bit.
|
2018-06-18 00:55:59 -04:00 |
|
bunnei
|
afdd657d30
|
gl_shader_decompiler: Implement LOP instructions.
|
2018-06-17 15:27:48 -04:00 |
|
bunnei
|
5673ce39c7
|
gl_shader_decompiler: Refactor LOP32I instruction a bit in support of LOP.
|
2018-06-17 13:31:39 -04:00 |
|
bunnei
|
d383043e07
|
gl_shader_decompiler: Implement integer size conversions for I2I/I2F/F2I.
|
2018-06-15 22:42:02 -04:00 |
|
bunnei
|
fb5bd0920d
|
Merge pull request #564 from bunnei/lop32i_passb
gl_shader_decompiler: Implement LOP32I LogicOperation PassB.
|
2018-06-15 22:04:03 -04:00 |
|
bunnei
|
55c49d5bf4
|
gl_shader_gen: Set position.w to 1.
|
2018-06-15 20:47:04 -04:00 |
|
bunnei
|
61f9d9c4ab
|
gl_shader_decompiler: Implement LOP32I LogicOperation PassB.
|
2018-06-15 20:43:33 -04:00 |
|
bunnei
|
2015a1b180
|
Merge pull request #558 from Subv/iadd32i
GPU: Implemented the iadd32i shader instruction.
|
2018-06-12 14:19:25 -04:00 |
|
Subv
|
db0497b808
|
GPU: Implemented the iadd32i shader instruction.
|
2018-06-12 11:46:45 -05:00 |
|
bunnei
|
5f3d6c85db
|
gl_shader_decompiler: Implement saturate for float instructions.
|
2018-06-11 21:46:34 -04:00 |
|
Subv
|
004b1b3830
|
GPU: Convert the gl_InstanceId and gl_VertexID variables to floats when reading from them.
This corrects the invalid position values in some games when doing attribute-less rendering.
|
2018-06-10 13:50:19 -05:00 |
|
Subv
|
2a7653142d
|
Rasterizer: Use UBOs instead of SSBOs for uploading const buffers.
This should help a bit with GPU performance once we're GPU-bound.
|
2018-06-09 18:02:05 -05:00 |
|
Subv
|
b366b885a1
|
GPU: Implement the iset family of shader instructions.
|
2018-06-09 16:19:13 -05:00 |
|
bunnei
|
d81aaa3ed3
|
Merge pull request #550 from Subv/ssy
GPU: Stub the SSY shader instruction.
|
2018-06-09 00:42:53 -04:00 |
|
bunnei
|
e2176dc7ce
|
Merge pull request #551 from bunnei/shr
gl_shader_decompiler: Implement SHR instruction.
|
2018-06-09 00:42:44 -04:00 |
|
bunnei
|
5440b9c634
|
gl_shader_decompiler: Implement SHR instruction.
|
2018-06-09 00:01:17 -04:00 |
|
Subv
|
abec5f82e2
|
GPU: Stub the SSY shader instruction.
This instruction tells the GPU where the flow reconverges in a non-uniform control flow scenario, we can ignore this when generating GLSL code.
|
2018-06-08 22:46:10 -05:00 |
|
bunnei
|
bbc4f369ed
|
gl_shader_decompiler: Implement IADD instruction.
|
2018-06-08 23:25:22 -04:00 |
|
bunnei
|
79e9c2e237
|
gl_shader_decompiler: Add missing asserts for saturate_a instructions.
|
2018-06-08 23:24:10 -04:00 |
|
Subv
|
c011b6f67e
|
GPU: Synchronize the blend state on every draw call.
Only independent blending on render target 0 is implemented for now.
This fixes the elongated squids in Splatoon 2's boot screen.
|
2018-06-08 17:05:52 -05:00 |
|
Subv
|
c712dafaee
|
GPU: Added registers for normal and independent blending.
|
2018-06-08 17:04:41 -05:00 |
|
bunnei
|
a931cf9e8b
|
Merge pull request #547 from Subv/compressed_alignment
GLCache: Align compressed texture sizes to their compression ratio, and then align that compressed size to the block height for tiled textures.
|
2018-06-08 16:40:49 -04:00 |
|
Subv
|
8d9534d830
|
GLCache: Align compressed texture sizes to their compression ratio, and then align that compressed size to the block height for tiled textures.
This fixes issues with retrieving non-block-aligned tiled compressed textures from the cache.
|
2018-06-08 12:27:19 -05:00 |
|
Subv
|
47dc5e0dab
|
Rasterizer: Flush the written region when writing shader uniform data before copying it to the uniform buffers.
This fixes the flip_viewport uniform having invalid values when drawing.
|
2018-06-08 12:22:39 -05:00 |
|