resource manager hot reload (#864)

This commit is contained in:
Turánszki János
2024-06-19 07:28:00 +02:00
committed by GitHub
parent eb3be791df
commit 3eb4c6cc37
12 changed files with 1045 additions and 917 deletions
+1 -23
View File
@@ -276,29 +276,7 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
break;
case WM_SETFOCUS:
editor.is_window_active = true;
if (wi::shadercompiler::GetRegisteredShaderCount() > 0)
{
static wi::jobsystem::context shader_check_ctx;
if (!wi::jobsystem::IsBusy(shader_check_ctx))
{
shader_check_ctx.priority = wi::jobsystem::Priority::Low;
wi::jobsystem::Execute(shader_check_ctx, [](wi::jobsystem::JobArgs args) {
wi::backlog::post("[Shader check] Started checking " + std::to_string(wi::shadercompiler::GetRegisteredShaderCount()) + " registered shaders for changes...");
if (wi::shadercompiler::CheckRegisteredShadersOutdated())
{
wi::backlog::post("[Shader check] Changes detected, initiating reload...");
wi::eventhandler::Subscribe_Once(wi::eventhandler::EVENT_THREAD_SAFE_POINT, [](uint64_t userdata) {
wi::renderer::ReloadShaders();
});
}
else
{
wi::backlog::post("[Shader check] All up to date");
}
});
}
}
editor.renderComponent.ReloadLanguage();
editor.HotReload();
break;
case WM_PAINT:
{