Henrik Rydgård
6797a24199
Texture saving: Try to limp along if memory allocation of buffer memory fails
2024-10-10 16:01:00 +02:00
Henrik Rydgård
e51c58716b
Fix minor code issues flagged by PVS-Studio and reported by alphrixus.
2024-10-10 14:10:30 +02:00
Henrik Rydgård
3d31b4ac4c
Fix possible framebuffer binding bug in EmuScreen
2024-10-02 16:21:53 +02:00
Henrik Rydgård
9b8f18298a
Translation fixes, etc
...
Thanks @TotalCaesar659
2024-09-27 10:15:52 +02:00
Henrik Rydgård
027385d218
Merge pull request #19491 from hrydgard/vertex-decoder-sanity-check
...
DrawEngineCommon: Enforce the limit on vertex decoding
2024-09-26 00:56:40 +02:00
Henrik Rydgård
3a4defe210
DrawEngineCommon: Enforce the limit on vertex decoding
...
Should help #18894 which draws using a nonsense index buffer sometimes,
causing problems since we decode the whole range...
2024-09-26 00:41:01 +02:00
Henrik Rydgård
f7af5a7743
When reinterpreting color between same-sized framebuffers sharing a z-buffer, copy the Z.
...
Fixes socom character customization screen, #19245
2024-09-26 00:16:55 +02:00
Henrik Rydgård
dfca3dd87a
Work around annoying assert in debug memory allocator on 32-bit Windows
2024-09-25 23:24:25 +02:00
Henrik Rydgård
702e77454a
Hardware transform: Clamp the specular coefficient to 0.0 before taking the power.
2024-09-25 21:09:13 +02:00
Henrik Rydgård
c451b41b8b
Merge pull request #19470 from hrydgard/for-based-loop-cpp17
...
Rebase of #18559 (For based loop cpp17 by GermanAizek)
2024-09-18 13:25:34 +02:00
sum2012
0bce42cc33
More Ignore address in gpu ( #16303 )
...
* More Ignore address 0 in gpu
Fix #16297
* Change to ignore bad memory access
* Update SoftGpu.cpp
---------
Co-authored-by: Henrik Rydgård <hrydgard@gmail.com>
2024-09-18 09:48:22 +00:00
Henrik Rydgård
fb80ad6370
Merge pull request #19413 from oltolm/d3d9_com_ptr
...
use ComPtr for D3D9
2024-09-18 11:33:07 +02:00
Herman Semenov
192650f551
[Core/HLE/GPU/D3D11/GLES] Using for based loop C++17 and replaced on structured binding map C++17
2024-09-18 11:10:10 +02:00
Henrik Rydgård
2ba4eaf3dd
First part of the const changes etc
2024-09-17 15:13:13 +02:00
Herman Semenov
3c66f149d3
[Common/Core/Windows] Removed excess check pointer before delete or free()
2024-09-17 11:34:42 +02:00
Henrik Rydgård
42c32c5afc
VertexDecoder: Don't read loop counts from memory. Improves codegen
2024-09-10 17:53:19 +02:00
Lubos
abeeeb1cbf
OpenXR - Sonic rivals rendering fix
2024-08-27 08:22:58 +02:00
oltolm
87db979ed7
use ComPtr for D3D9
2024-08-25 12:08:31 +02:00
Lubos
3154a5fac1
OpenXR - VR camera features on any platform
2024-08-07 09:25:12 +02:00
Lubos
3a6bf77f6b
OpenXR - Texts review
2024-08-05 12:45:42 +02:00
Henrik Rydgård
5926886c0c
Some include cleanup, delete some obsolete code
2024-07-25 14:52:41 +02:00
Henrik Rydgård
fab034d866
Fix minor difference between ubershader and specialized vshaders
2024-07-24 20:50:33 +02:00
Henrik Rydgård
aa17f71f14
Merge pull request #19363 from hrydgard/vertex-decoder-remove-membfun
...
VertexDecoder: Remove member function pointers from decoding
2024-07-23 08:48:48 +02:00
Henrik Rydgård
0d8f194c65
Merge pull request #19361 from lvonasek/feature-openxr-antiflickering
...
OpenXR - Anti-flickering rendering flow added
2024-07-22 21:12:03 +02:00
Henrik Rydgård
6e0ec4a131
Slightly nudge down the multiplier used for float->u8 conversion in fragment shaders
...
Seems in lowp precision (as seen on some Android devices) this got
rounded up to 256 when multiplied by 1.0, causing the u8 to overflow, giving
us the wrong value instead of nicely rounding down to 255 with the floor
function.
Fixes #19235
2024-07-22 18:36:58 +02:00
Henrik Rydgård
43c68c4277
VertexDecoder: Remove member function pointers from decoding
2024-07-22 14:06:15 +02:00
Lubos
b70c2cfd10
OpenXR - Anti-flickering rendering flow added
2024-07-22 13:33:03 +02:00
Henrik Rydgård
fd9daf7594
Fix some minor issues found by --sanitize. Add --sanitizeub.
...
Unfortunately the ub (undefined behavior) sanitizer has some bugs, it doesn't
understand pointers to member functions, so can't use it in-game (due to the
vertex decoder).
Thanks Nemoumbra for the reminder.
2024-07-22 11:37:18 +02:00
Henrik Rydgård
2a82a46308
Merge pull request #19358 from hrydgard/achievement-crashfix
...
Two crashfixes: Achievements menu, Outrun
2024-07-22 10:46:58 +02:00
Henrik Rydgård
92938f8283
Vertex decoder, SSE opt: Use the correct store operation to store 64 bits.
...
The other one duplicates the bits twice and requires alignment.
Fixes #19351
2024-07-22 10:30:57 +02:00
Henrik Rydgård
ef95e24169
Implement compat flag proposed in #18423 , forcing readbacks in Juiced 2
...
In-game, there's no slowdown, and this fixes the decal editor. So it's
no use allowing readbacks to be turned off in this game.
See issue #18423
2024-07-20 11:24:24 +02:00
Henrik Rydgård
7c817f3ecd
Add helper for Vulkan struct chaining
2024-07-19 09:45:02 +02:00
Henrik Rydgård
7738899434
Fix triangle strip vertex order to have a consistent provoking vertex
2024-07-17 16:12:03 +02:00
Henrik Rydgård
096985f51f
Provoking vertex (software transform): Simpler solution
...
Simply rotate each primitive in the index buffer to simulate a different provoking vertex.
Since at this point we have already generated a plain primitive index
buffer, it's easy to manipulate like this.
An even better solution would be to generate rotated index buffers
directly during decode, although that code is super critical and does
not need more complexity..
We could now also enable this for hardware transform but I'm leaving
that for later.
2024-07-17 14:40:52 +02:00
Henrik Rydgård
6b1e57a840
We never draw non-indexed in software transform mode, so get rid of the path.
2024-07-17 14:40:52 +02:00
Henrik Rydgård
665f03ff62
Add provoking vertex to caps, flip the flag around
2024-07-17 14:40:52 +02:00
Henrik Rydgård
f6aa86dfee
Add a comment
2024-07-17 14:40:52 +02:00
Henrik Rydgård
138193a776
Add support for the EXT_provoking_vertex Vulkan extension, allowing us to skip software transform for this case.
2024-07-17 10:41:25 +02:00
Henrik Rydgård
e01ca5b057
Logging API change (refactor) ( #19324 )
...
* Rename LogType to Log
* Explicitly use the Log:: enum when logging. Allows for autocomplete when editing.
* Mac/ARM64 buildfix
* Do the same with the hle result log macros
* Rename the log names to mixed case while at it.
* iOS buildfix
* Qt buildfix attempt, ARM32 buildfix
2024-07-14 14:42:59 +02:00
Henrik Rydgård
0b76d443e2
D3D11 texture replacement: Support more mip levels. Fixes crash in texture pack.
...
Fixes #19312
2024-07-02 11:56:27 +02:00
Lubos
a9b5a4739e
Fix math of simple stereo
2024-06-25 16:06:03 +02:00
Luboš V
27152b1e47
OpenXR - Forgotten usages
2024-06-24 19:43:17 +02:00
Luboš V
dd9bc42b0a
OpenXR - Remove multiview from shader
2024-06-24 19:24:46 +02:00
Lubos
ffca688f99
OpenXR - Remove multiview
2024-06-24 17:00:56 +02:00
Henrik Rydgård
ef91fa8b4f
Fix code typo in NEON reinterpret cast.
...
Fixes #19258
2024-06-08 21:25:44 +02:00
Henrik Rydgård
8d6e96d04e
Use binary search to find IR block offsets
2024-06-07 09:28:27 +02:00
Henrik Rydgård
c794f4bd41
Add an unrelated comment and some casts
2024-06-05 08:35:09 +02:00
Henrik Rydgård
6ce087430b
JIT-less vertex decoder: SSE/NEON-optimize ComputeSkinMatrix
2024-06-04 12:29:16 +02:00
Henrik Rydgård
083656fcc0
Merge pull request #19241 from hrydgard/optimize-vertex-dec
...
Optimize color conversions in non-JIT vertex decoder
2024-06-04 12:07:09 +02:00
Henrik Rydgård
9ac7054b01
Vertex decoder (non-JIT): Optimize 16-bit color decoders.
2024-06-04 10:35:31 +02:00