11 Commits
Author SHA1 Message Date
ShinmegumiandMaranBr 3f226678dd [vk] Fix fallback viewport/scissor origin handling (#294)
When viewport_scale_offset_enabled is disabled, the fallback path
previously assumed a top-left origin for both viewport and scissor.
This caused incorrect positioning or inverted geometry when the GPU
state expected a lower-left origin.

This change:
- Adjusts viewport setup: if window_origin is lower-left, shift Y and
  flip height negative to emulate lower-left in Vulkan’s top-left space.
- Updates scissor setup: recalculates Y for lower-left origin and
  ensures width/height fall back to 1 if zero, avoiding invalid extents.

This aligns Vulkan’s viewport/scissor behavior with Maxwell state,
fixing rendering issues in paths without scale/offset enabled.

Co-authored-by: MaranBr <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/294
Co-authored-by: Shinmegumi <[email protected]>
Co-committed-by: Shinmegumi <[email protected]>
2025-11-14 15:13:29 +01:00
776958c79d [vk] Introduce Ring Buffers for Uniform Buffer (#2698)
Create 3 ring buffers which rotates between buffers each frame to avoid GPU/CPU conflicts
BindMappedUniformBuffer first tries to allocate from the ring buffer and falls back to staging pool only if allocation is too large.
Note to testers:- please test the performance since it is primarily a performance optimization and also look for visual bugs.

Co-authored-by: wildcard <[email protected]>
Co-authored-by: MaranBr <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2698
Reviewed-by: MaranBr <[email protected]>
Co-authored-by: Shinmegumi <[email protected]>
Co-committed-by: Shinmegumi <[email protected]>
2025-10-10 19:24:20 +02:00
Shinmegumi 61adc85c4b [ci] Minor change to fix building (#2644)
MSVC did not like that one of our variables was a constexpr since it was defined in the externals as a constexpr. Changed to const auto like the rest to ensure it built properly.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2644
Reviewed-by: MaranBr <[email protected]>
Reviewed-by: Maufeat <[email protected]>
Co-authored-by: Shinmegumi <[email protected]>
Co-committed-by: Shinmegumi <[email protected]>
2025-10-01 21:09:27 +02:00
Shinmegumi d623e04606 Fix src/core/cmakelists.txt (#2537)
Removed entry that was added back trying to fix a conflict in a PR.

Signed-off-by: Shinmegumi <[email protected]>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2537
Reviewed-by: Lizzie <[email protected]>
Reviewed-by: MaranBr <[email protected]>
Co-authored-by: Shinmegumi <[email protected]>
Co-committed-by: Shinmegumi <[email protected]>
2025-09-20 18:19:44 +02:00
Shinmegumiandlizzie eb80a30c42 revert 22847ec78a (#331)
revert [jit] Disable fastmem (by default) on FreeBSD, Solaris and OpenBSD due to subpar timings of SIGSEGV (#319)
According to MaranBR, this should have never been merged and should have been closed instead as they iterated on it in 324.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/319
Reviewed-by: Shinmegumi <[email protected]>
Co-authored-by: lizzie <[email protected]>
Co-committed-by: lizzie <[email protected]>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/331
Co-authored-by: Shinmegumi <[email protected]>
Co-committed-by: Shinmegumi <[email protected]>
2025-08-27 15:12:16 +02:00
Shinmegumi eb72a358e3 [vk] Fix dynamic vertex input state handling (#295)
only applies vertex input state if the pipeline was created with it

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/295
Reviewed-by: Lizzie <[email protected]>
Co-authored-by: Shinmegumi <[email protected]>
Co-committed-by: Shinmegumi <[email protected]>
2025-08-23 20:34:05 +02:00
Shinmegumi c8d6f23129 [vk] Bring Vulkan closer to Spec (#180)
The changes noted below bring Vulkan closer to 1.3 spec and get rid of validation errors and enable us to properly use one or two more functions.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/180
Reviewed-by: crueter <[email protected]>
Reviewed-by: Maufeat <[email protected]>
Co-authored-by: Shinmegumi <[email protected]>
Co-committed-by: Shinmegumi <[email protected]>
2025-08-13 18:02:05 +02:00
ShinmegumiandGamer64 45e7c0d62d Fix inversion of toggle for early fences (#175)
This should fix performance regressions in games that didn't need this and fix it to work with the games it is intended to be used for.

Made based on recommendations by Discord Contributor.

Signed-off-by: Shinmegumi <[email protected]>
Co-authored-by: Gamer64 <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/175
Co-authored-by: Shinmegumi <[email protected]>
Co-committed-by: Shinmegumi <[email protected]>
2025-08-02 00:10:29 +02:00
ShinmegumiandMaufeat b1f3b568fb [vk] Fix query cache leak on missed sync (#131)
Provided by community member, elementary-particle. Submitted as PR by MaranBR.

Fixed issues:

1. The queue cache forgot to put the host query into unregister queue if they weren't synced. This will block all the banks from freeing causing a major leak.

2. SamplesQueryCounter is not aligned with renderpass begin/end. This creates invalid queries.

3. Conditional rendering is not turned on/off at the correct location making them invalid.

Co-authored-by: Maufeat <[email protected]>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/131
Co-authored-by: Shinmegumi <[email protected]>
Co-committed-by: Shinmegumi <[email protected]>
2025-07-26 18:12:54 +02:00
Shinmegumi 67dfa81dc7 [host1x] Fix typo (#116)
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/116
2025-07-24 15:55:26 +02:00
Shinmegumi b2b993b665 [build, cmake] fix android (#106)
Approved by Shinmegumi. Confirmed build issue fixed with this commit.
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/106
2025-07-23 19:08:26 +02:00