Henrik Rydgård
5f1ffeae70
Correct LogicOp API support detection
2022-09-04 00:08:40 +02:00
Henrik Rydgård
d3309dd8e9
Minor refactor with pipelines in QueueRunner (makes more information available for easier debugging)
2022-09-03 23:08:02 +02:00
Henrik Rydgård
fb3f417e77
Fix lying comment, log level reduction
2022-09-03 16:15:46 +02:00
Henrik Rydgård
76bd2395bf
Promise: Add SpawnEmpty (couldn't come up with a better name), fix bug with multiple waiters
2022-09-03 15:21:08 +02:00
Henrik Rydgård
c06cf8efaa
Switch Vulkan pipelines to use promises for synchronization
...
Slightly more expensive I guess but shouldn't be much of a bottleneck.
2022-09-03 15:21:08 +02:00
Henrik Rydgård
ebe2d1b30f
More buildfixing
2022-09-03 15:21:07 +02:00
Henrik Rydgård
210233ede0
Buildfix
2022-09-03 15:21:07 +02:00
Henrik Rydgård
e701037267
Buildfix
2022-09-03 15:21:07 +02:00
Henrik Rydgård
8775837c11
Work towards finding the leak
2022-09-03 15:21:07 +02:00
Henrik Rydgård
93422f6dea
Don't block on shader creation until it's time to create the pipeline.
2022-09-03 15:21:07 +02:00
Henrik Rydgård
ec0586ba50
Use promises to hold shader modules, for later asyncification
2022-09-03 15:21:07 +02:00
Henrik Rydgård
f2e0f7611c
Display paths with backslashes on Windows. Show texture path when saving.
2022-09-01 15:04:59 +02:00
Henrik Rydgård
9097fdaae6
Shrink VkRenderData from 88 to 64 bytes.
2022-09-01 14:21:34 +02:00
Henrik Rydgård
ecb84987ef
Remove allocation from the heaviest MemBlockInfo path (BlockTransfer). Required some refactoring.
2022-09-01 11:59:35 +02:00
Henrik Rydgård
24d674d2bc
Shrink the TransitionRequest struct, use TinySet
2022-09-01 10:59:27 +02:00
Henrik Rydgård
bd71d8044b
TinySet bugfix, add "append"
2022-09-01 10:59:24 +02:00
Henrik Rydgård
a8a9fb4206
Much faster framebuffer matching (no more ToString every time there's more than 1 candidate, etc).
2022-08-31 14:23:56 +02:00
Henrik Rydgård
4da2ca0935
Implement shader blending for D3D9
...
This was easy, dunno why I never got around to it before..
I guess I didn't know about VPOS.
This does raise our minimum shader model requirement to ps_3_0.
2022-08-30 12:19:56 +02:00
Henrik Rydgård
44d822be3b
Address feedback
2022-08-30 06:41:37 +02:00
Henrik Rydgård
670c31e746
Add support for reading depth buffers to the PackFramebufferSync function.
...
Also adds D16 conversion code (though, could probably get away with just
creating a 16-bit depth buffer on the GPU and blit to it, where depth
blit is available).
Not yet used, just getting it in separately.
2022-08-30 00:00:59 +02:00
Henrik Rydgård
34ed960a72
Use better pattern for enum switches
2022-08-28 23:57:01 +02:00
Henrik Rydgård
b447092742
Some Vulkan renderpass load/store optimizations.
2022-08-28 23:16:48 +02:00
Unknown W. Brackets
da53ab8ef9
UI: Validate UI scissor inside bounds.
2022-08-28 09:01:35 -07:00
Henrik Rydgård
5247ffa0af
Merge pull request #15910 from unknownbrackets/riscv-emitter
...
Add LI and compressed instructions for RISC-V
2022-08-28 15:57:03 +02:00
Unknown W. Brackets
08d82ec15b
riscv: Emit compressed instructions.
...
Includes automatically using compressed, optionally.
2022-08-27 15:44:19 -07:00
Unknown W. Brackets
946080206d
riscv: Improve sign reduce/immediate readability.
2022-08-27 15:44:18 -07:00
Unknown W. Brackets
c807d459f6
riscv: Emit ADD/SUB/etc. for ADDW/SUBW/etc. on R32.
...
No need to complicate code, we can just write ADDW() and expect it to work
on R32 (if ever motivated to support it.)
2022-08-27 15:44:18 -07:00
Unknown W. Brackets
c81d887a86
riscv: Include an LI helper in the emitter.
...
Can be used for integers and floats.
2022-08-27 15:44:18 -07:00
Henrik Rydgård
322f29ce80
Comments and fixes
2022-08-27 23:37:02 +02:00
Henrik Rydgård
3c5ec25f61
Initial implementation of 32/16-bit color reinterpret blits.
2022-08-26 15:51:25 +02:00
Henrik Rydgård
31bd16a042
Merge pull request #15905 from unknownbrackets/riscv-emitter
...
Add a RISC-V emitter
2022-08-26 09:41:20 +02:00
Unknown W. Brackets
4a93647acb
riscv: Emit CSR manipulation instructions.
2022-08-25 21:20:49 -07:00
Unknown W. Brackets
b5755b6cf7
riscv: Validate FixupBranch usage better.
...
Also avoid FixupBranch alignment issues.
2022-08-25 21:20:49 -07:00
Unknown W. Brackets
591de6be1d
riscv: Emit float instructions.
2022-08-25 21:19:28 -07:00
Unknown W. Brackets
53693072d2
riscv: Emit atomic operations.
2022-08-25 21:19:28 -07:00
Unknown W. Brackets
c66d02d4db
riscv: Emit mul/div instructions.
2022-08-25 21:19:28 -07:00
Unknown W. Brackets
00280ab2ad
riscv: Emit fence and 64-bit instructions.
2022-08-25 21:19:28 -07:00
Unknown W. Brackets
49ec8a207d
riscv: Emit 32-bit 3-op instructions, validate GPR.
2022-08-25 21:19:27 -07:00
Unknown W. Brackets
1c35cfb325
riscv: Emit 32-bit load/store and imm ops.
2022-08-25 21:19:27 -07:00
Unknown W. Brackets
1dab9d1875
riscv: Emit standard B/U/J type ops.
2022-08-25 21:19:27 -07:00
Unknown W. Brackets
9fcad83940
riscv: Add initial emitter shell.
2022-08-25 21:17:11 -07:00
Henrik Rydgård
416d8b403b
Merge pull request #15768 from lvonasek/feature_openxr_6dof
...
OpenXR - 6DoF support
2022-08-24 18:49:41 +02:00
Henrik Rydgård
d459eac891
Fix checks for depth texture support, GLES syntax errors
2022-08-24 11:26:07 +02:00
Henrik Rydgård
bd674c47b6
OpenGL: Fix regular depal (shader depal still worked) that broke recently
2022-08-24 11:01:57 +02:00
Henrik Rydgård
8b3ef19450
Fix wrong width/height values being stored in thin3d textures
2022-08-24 10:23:37 +02:00
Henrik Rydgård
eb2f12e64a
Drive-by texture slot management cleanup
2022-08-24 10:22:58 +02:00
Luboš Vonásek
c5cb45b1f7
Merge branch 'hrydgard:master' into feature_openxr_6dof
2022-08-24 06:55:31 +02:00
Henrik Rydgård
fc81b76b98
Vulkan: Very minor chnages after checking Best Practices with new validation layer
2022-08-23 23:55:53 +02:00
Henrik Rydgård
5084743bbb
Use Draw2D for depal shaders (except the actual blit, for now)
2022-08-23 11:21:40 +02:00
Unknown W. Brackets
c13f57e64f
Vulkan: Cleanup minor logging.
2022-08-21 19:40:02 -07:00