diff --git a/src/Game.cpp b/src/Game.cpp index 8350063..deae13a 100644 --- a/src/Game.cpp +++ b/src/Game.cpp @@ -109,7 +109,7 @@ namespace FRG renderer.shaderManager.AddShaderFromFiles("defaultColor", "resources/shaders/defaultColor.vertex", "resources/shaders/defaultColor_desktop.fragment", CONST_ZIP_FILE); renderer.shaderManager.AddShaderFromFiles("default", "resources/shaders/default.vertex", "resources/shaders/default_desktop.fragment", CONST_ZIP_FILE); #endif - loadingTexture = renderer.textureManager.LoadFromPng("resources/loading003.png", ""); + loadingTexture = renderer.textureManager.LoadFromPng("resources/loading.png", ""); loadingProgressBarFrameTexture = renderer.textureManager.LoadFromPng( "resources/loadingProgressBarFrame.png", "", true); @@ -395,13 +395,14 @@ namespace FRG audioPlayer->crossFadeMusicAsync("audio/main menu final.ogg"); }); - - /*loadSteps.push([this]() { - if (menshadowsEnabled) - { + +#ifdef __ANDROID__ + loadSteps.push([this]() { + if (menuManager.shadowsEnabled) { createShadowMapAndProparateToLocations(); } - });*/ + }); +#endif loadSteps.push([this]() { loadingCompleted = true; @@ -920,8 +921,11 @@ namespace FRG logger() << "Shadow map already exists, skipping creation" << std::endl; return; } + CheckGlError(__FILE__, __LINE__); shadowMap = std::make_shared(2048, 40.0f, 0.1f, 100.0f); + CheckGlError(__FILE__, __LINE__); shadowMap->setLightDirection(Eigen::Vector3f(-0.5f, -1.0f, -0.3f)); + CheckGlError(__FILE__, __LINE__); logger() << "Shadow map initialized" << std::endl; for (auto& [name, loc] : gameState.locations) { @@ -931,10 +935,16 @@ namespace FRG } void Game::destroyShadowMapAndProparateToLocations() { + CheckGlError(__FILE__, __LINE__); + shadowMap.reset(); + CheckGlError(__FILE__, __LINE__); + for (auto& [name, loc] : gameState.locations) { loc->shadowMap.reset(); } + CheckGlError(__FILE__, __LINE__); + } diff --git a/src/render/ShadowMap.cpp b/src/render/ShadowMap.cpp index 410e671..d5ad9d0 100644 --- a/src/render/ShadowMap.cpp +++ b/src/render/ShadowMap.cpp @@ -56,7 +56,7 @@ namespace FRG { { glGenFramebuffers(1, &fbo); -#ifdef EMSCRIPTEN +#if defined(EMSCRIPTEN) || defined(__ANDROID__) glGenTextures(1, &depthTexture); glBindTexture(GL_TEXTURE_2D, depthTexture);