Sync render thread present with main thread. (#62)

* Experimenting with syncing the render thread.

* Separate wait functions for swap chains.

* Sync render thread present to the main thread.

* Move present to main thread and frame limit after presenting.

* g_next -> s_next

* Fix Vulkan validation errors.

* Make max frame latency configurable.

* Fix loading thread breaking waitable swap chain order.
This commit is contained in:
Skyth (Asilkan)
2024-12-25 16:29:15 +03:00
committed by GitHub
parent c1cafacf22
commit fd009bcada
14 changed files with 242 additions and 275 deletions
+3
View File
@@ -1,4 +1,5 @@
#include <app.h>
#include <gpu/video.h>
#include <install/installer.h>
#include <kernel/function.h>
#include <ui/game_window.h>
@@ -38,6 +39,8 @@ PPC_FUNC(sub_824EB490)
PPC_FUNC_IMPL(__imp__sub_822C1130);
PPC_FUNC(sub_822C1130)
{
Video::WaitOnSwapChain();
// Correct small delta time errors.
if (Config::FPS >= FPS_MIN && Config::FPS < FPS_MAX)
{