From 656d6f13711284b921c79b35dd626ead63b28cd2 Mon Sep 17 00:00:00 2001 From: ohyzha Date: Fri, 26 Jul 2024 16:07:28 +0300 Subject: [PATCH] working msdf atlas gen lib on windows --- 3rdParty/msdf/CMakeLists.txt | 20 ++++++++++++++++++-- CMakeLists.txt | 2 +- openVulkanoCpp/Scene/Geometry.cpp | 4 ++++ 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/3rdParty/msdf/CMakeLists.txt b/3rdParty/msdf/CMakeLists.txt index 5900c01..f4cfcfe 100644 --- a/3rdParty/msdf/CMakeLists.txt +++ b/3rdParty/msdf/CMakeLists.txt @@ -10,6 +10,10 @@ if(NOT DEFINED MSDFGEN_REPO) set(MSDFGEN_REPO https://github.com/Chlumsky/msdfgen.git) endif () +if(NOT DEFINED MSDFGEN_ATRLAS_REPO) + set(MSDFGEN_ATRLAS_REPO https://github.com/Chlumsky/msdf-atlas-gen.git) +endif() + if(NOT DEFINED VCPKG_REPO) set(VCPKG_REPO https://github.com/microsoft/vcpkg.git) endif() @@ -62,8 +66,6 @@ if(WIN32) set(FREETYPE_INCLUDE_DIRS "${VCPKG_SRC_DIR}/packages/freetype_${TRIPLET}/include" CACHE STRING "freetype include path on win") endif() -#find_package(Freetype REQUIRED) - set(MSDFGEN_DISABLE_SVG TRUE CACHE INTERNAL "disable msdfgen svg") set(MSDFGEN_DISABLE_PNG TRUE CACHE INTERNAL "disable msdfgen png") set(MSDFGEN_USE_SKIA OFF CACHE BOOL "use skia" FORCE) @@ -76,3 +78,17 @@ FetchContent_Declare( GIT_SHALLOW TRUE ) FetchContent_MakeAvailable(msdfgen) + +set(MSDFGEN_DISABLE_SVG TRUE CACHE INTERNAL "disable msdfgen svg") +set(MSDFGEN_DISABLE_PNG TRUE CACHE INTERNAL "disable msdfgen png") +set(MSDF_ATLAS_USE_SKIA OFF CACHE BOOL "use skia" FORCE) +set(MSDF_ATLAS_MSDFGEN_EXTERNAL ON CACHE BOOL "do not build msdfgen submodule" FORCE) + +FetchContent_Declare( + msdfgen_atlas + EXCLUDE_FROM_ALL + GIT_REPOSITORY ${MSDFGEN_ATRLAS_REPO} + GIT_TAG master + GIT_SHALLOW TRUE +) +FetchContent_MakeAvailable(msdfgen_atlas) diff --git a/CMakeLists.txt b/CMakeLists.txt index 33d53a2..1b53063 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -119,7 +119,7 @@ endif() list(APPEND CMAKE_PREFIX_PATH ${CMAKE_BINARY_DIR}/deps/INSTALL) target_link_libraries(openVulkanoCpp PRIVATE magic_enum yaml-cpp fmt spdlog glm pugixml stb eigen utf8cpp imgui_internal - TracyClient stud-uuid ryml unordered_dense Boost::regex units msdfgen::msdfgen msdfgen::msdfgen-ext) + TracyClient stud-uuid ryml unordered_dense Boost::regex units msdfgen::msdfgen msdfgen::msdfgen-ext msdf-atlas-gen) if (NOT IOS) LinkCurl(openVulkanoCpp) endif() diff --git a/openVulkanoCpp/Scene/Geometry.cpp b/openVulkanoCpp/Scene/Geometry.cpp index 776062f..0c88cee 100644 --- a/openVulkanoCpp/Scene/Geometry.cpp +++ b/openVulkanoCpp/Scene/Geometry.cpp @@ -17,6 +17,10 @@ #endif #include +#include "msdfgen.h" +#include "msdfgen-ext.h" +#include "msdf-atlas-gen/msdf-atlas-gen.h" + namespace OpenVulkano::Scene { Geometry::Geometry(const Geometry& other)