Fix wasm ci (#391)

* Update wasm-build.yml

* Set embed_rendererbackends with wasm

* wasm fixes

* Fix CI

* Update wasm-build.yml

* More wasm fixes

* Final fixes
This commit is contained in:
Jérôme Leclercq
2023-02-05 15:03:48 +01:00
committed by GitHub
parent a8b003224d
commit 20f70533c0
5 changed files with 16 additions and 23 deletions

View File

@@ -17,16 +17,17 @@
#include <stdexcept>
#ifdef NAZARA_RENDERER_EMBEDDEDBACKENDS
#include <Nazara/OpenGLRenderer/OpenGLRenderer.hpp>
#ifndef NAZARA_PLATFORM_WEB
#include <Nazara/VulkanRenderer/VulkanRenderer.hpp>
#endif
#include <Nazara/Renderer/Debug.hpp>
#ifdef NAZARA_PLATFORM_WEB
#include <Nazara/OpenGLRenderer/OpenGLRenderer.hpp>
#endif
#include <Nazara/Renderer/Debug.hpp>
#ifdef NAZARA_COMPILER_MSVC
#define NazaraRendererPrefix ""
#else
@@ -81,7 +82,6 @@ namespace Nz
void Renderer::LoadBackend(const Config& config)
{
#ifndef NAZARA_PLATFORM_WEB
constexpr std::array<const char*, RenderAPICount> rendererPaths = {
NazaraRendererPrefix "NazaraDirect3DRenderer" NazaraRendererDebugSuffix, // Direct3D
NazaraRendererPrefix "NazaraMantleRenderer" NazaraRendererDebugSuffix, // Mantle
@@ -128,7 +128,10 @@ namespace Nz
};
RegisterImpl(RenderAPI::OpenGL, [] { return 50; }, [] { return std::make_unique<OpenGLRenderer>(); });
#ifndef NAZARA_PLATFORM_WEB
RegisterImpl(RenderAPI::Vulkan, [] { return 100; }, [] { return std::make_unique<VulkanRenderer>(); });
#endif
#else
auto RegisterImpl = [&](RenderAPI api, auto ComputeScore)
{
@@ -148,7 +151,10 @@ namespace Nz
};
RegisterImpl(RenderAPI::OpenGL, [] { return 50; });
#ifndef NAZARA_PLATFORM_WEB
RegisterImpl(RenderAPI::Vulkan, [] { return 100; });
#endif
#endif
std::sort(implementations.begin(), implementations.end(), [](const auto& lhs, const auto& rhs) { return lhs.score > rhs.score; });
@@ -206,16 +212,6 @@ namespace Nz
m_rendererLib = std::move(chosenLib);
#endif
#else
std::unique_ptr<Nz::OpenGLRenderer> impl = std::make_unique<Nz::OpenGLRenderer>();
if (!impl || !impl->Prepare({}))
{
NazaraError("Failed to create renderer implementation");
}
m_rendererImpl = std::move(impl);
#endif
NazaraDebug("Using " + m_rendererImpl->QueryAPIString() + " as renderer");
}