From 32255e2d0b8f9ad90da80a90c7d2f6e063ac8cfd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tur=C3=A1nszki=20J=C3=A1nos?= Date: Sun, 2 Apr 2023 14:36:11 +0200 Subject: [PATCH] editor: build speed improvement for embedded resources --- Editor/CMakeLists.txt | 1 + Editor/Editor.cpp | 7 ++----- Editor/Editor_SOURCE.vcxitems | 1 + Editor/Editor_SOURCE.vcxitems.filters | 1 + Editor/EmbeddedResources.cpp | 7 +++++++ Editor/stdafx.h | 6 ++++++ 6 files changed, 18 insertions(+), 5 deletions(-) create mode 100644 Editor/EmbeddedResources.cpp diff --git a/Editor/CMakeLists.txt b/Editor/CMakeLists.txt index 8bbf0173d..e56d042ab 100644 --- a/Editor/CMakeLists.txt +++ b/Editor/CMakeLists.txt @@ -43,6 +43,7 @@ set (SOURCE_FILES GeneralWindow.cpp ProfilerWindow.cpp xatlas.cpp + EmbeddedResources.cpp ) add_subdirectory(meshoptimizer) diff --git a/Editor/Editor.cpp b/Editor/Editor.cpp index e3756eb31..348ddafdb 100644 --- a/Editor/Editor.cpp +++ b/Editor/Editor.cpp @@ -5,9 +5,6 @@ #include "ModelImporter.h" #include "Translator.h" -#include "FontAwesomeV6.h" // font TTF data -#include "yumin.h" // yumin.ttf font - using namespace wi::graphics; using namespace wi::primitive; using namespace wi::scene; @@ -608,10 +605,10 @@ void EditorComponent::Start() // We will not directly use this font style, but let the font renderer fall back on it // when an icon character is not found in the default font. // This is added on main thread, not inside Load(), to avoid conflict with font system intialization - wi::font::AddFontStyle("FontAwesomeV6", font_awesome_v6, sizeof(font_awesome_v6)); + wi::font::AddFontStyle("FontAwesomeV6", font_awesome_v6, font_awesome_v6_size); // Same thing with the yumin font as above, it is a fallback for asian characters - wi::font::AddFontStyle("yumin", yumin, sizeof(yumin)); + wi::font::AddFontStyle("yumin", yumin, yumin_size); RenderPath2D::Start(); } diff --git a/Editor/Editor_SOURCE.vcxitems b/Editor/Editor_SOURCE.vcxitems index ee2121308..4a0a064a0 100644 --- a/Editor/Editor_SOURCE.vcxitems +++ b/Editor/Editor_SOURCE.vcxitems @@ -22,6 +22,7 @@ + diff --git a/Editor/Editor_SOURCE.vcxitems.filters b/Editor/Editor_SOURCE.vcxitems.filters index 305267db6..5fb73dc93 100644 --- a/Editor/Editor_SOURCE.vcxitems.filters +++ b/Editor/Editor_SOURCE.vcxitems.filters @@ -87,6 +87,7 @@ + diff --git a/Editor/EmbeddedResources.cpp b/Editor/EmbeddedResources.cpp new file mode 100644 index 000000000..bbfe8d0e9 --- /dev/null +++ b/Editor/EmbeddedResources.cpp @@ -0,0 +1,7 @@ +#include "stdafx.h" + +#include "FontAwesomeV6.h" // font TTF data +const size_t font_awesome_v6_size = sizeof(font_awesome_v6); + +#include "yumin.h" // yumin.ttf font +const size_t yumin_size = sizeof(yumin); diff --git a/Editor/stdafx.h b/Editor/stdafx.h index 2d386ce1a..2c0e76428 100644 --- a/Editor/stdafx.h +++ b/Editor/stdafx.h @@ -14,3 +14,9 @@ #include "WickedEngine.h" #include "Editor.h" + +// Linked externally from EmbeddedResources.cpp: +extern const uint8_t font_awesome_v6[]; +extern const size_t font_awesome_v6_size; +extern const uint8_t yumin[]; +extern const size_t yumin_size;