mirror of
https://github.com/johndoe6345789/SDL3CPlusPlus.git
synced 2026-05-02 09:34:58 +00:00
feat: Initialize GUI service after graphics setup and prepare frame with swapchain extent
This commit is contained in:
@@ -136,6 +136,17 @@ void ServiceBasedApp::Run() {
|
||||
graphicsService->InitializeSwapchain();
|
||||
}
|
||||
|
||||
// Initialize GUI service after graphics
|
||||
auto guiService = registry_.GetService<services::IGuiService>();
|
||||
auto vulkanDeviceService = registry_.GetService<services::IVulkanDeviceService>();
|
||||
auto swapchainService = registry_.GetService<services::ISwapchainService>();
|
||||
if (guiService && vulkanDeviceService && swapchainService) {
|
||||
guiService->Initialize(vulkanDeviceService->GetDevice(),
|
||||
vulkanDeviceService->GetPhysicalDevice(),
|
||||
swapchainService->GetSwapchainImageFormat(),
|
||||
runtimeConfig_.scriptPath.parent_path());
|
||||
}
|
||||
|
||||
// Run the main application loop with crash recovery
|
||||
if (crashRecoveryService_) {
|
||||
bool success = crashRecoveryService_->ExecuteWithTimeout(
|
||||
|
||||
@@ -96,7 +96,8 @@ void RenderCoordinatorService::RenderFrame(float time) {
|
||||
|
||||
if (guiService_ && guiScriptService_ && guiScriptService_->HasGuiCommands()) {
|
||||
auto guiCommands = guiScriptService_->LoadGuiCommands();
|
||||
(void)guiCommands;
|
||||
auto extent = graphicsService_->GetSwapchainExtent();
|
||||
guiService_->PrepareFrame(guiCommands, extent.width, extent.height);
|
||||
}
|
||||
|
||||
graphicsService_->EndFrame();
|
||||
|
||||
Reference in New Issue
Block a user