Try to fix deadlock
All checks were successful
eden-license / license-header (pull_request) Successful in 18s
All checks were successful
eden-license / license-header (pull_request) Successful in 18s
This commit is contained in:
parent
a9d8ce9543
commit
c1f7532dc9
1 changed files with 7 additions and 3 deletions
|
@ -196,16 +196,20 @@ void RendererVulkan::Composite(std::span<const Tegra::FramebufferConfig> framebu
|
|||
render_window.OnFrameDisplayed();
|
||||
};
|
||||
|
||||
// Frame interpolation logic
|
||||
// Frameskip logic
|
||||
if (Settings::values.frame_interpolation.GetValue()) {
|
||||
skip_next_frame = !skip_next_frame;
|
||||
if (skip_next_frame && last_presented_frame) {
|
||||
// Present the last frame again, skip rendering
|
||||
// Only skip if we have a valid last frame
|
||||
if (skip_next_frame && last_presented_frame != nullptr) {
|
||||
present_manager.Present(last_presented_frame);
|
||||
gpu.RendererFrameEndNotify();
|
||||
rasterizer.TickFrame();
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
// If frameskip is off, always reset skip state
|
||||
skip_next_frame = false;
|
||||
last_presented_frame = nullptr;
|
||||
}
|
||||
|
||||
RenderAppletCaptureLayer(framebuffers);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue