RadenTheFolf Posted May 20, 2023 Share Posted May 20, 2023 I'm using the Steam ultra app kit. I created a new project using the project manager and am trying to get font loading to work. I'm not sure if the feature just isn't available on the steam version or if I am missing something. #include "UltraEngine.h" #include "LoadingWindow.h" LoadingWindow::LoadingWindow(const char* steamName) { SteamName = steamName; } void LoadingWindow::Create() { //Get the displays std::vector<std::shared_ptr<UltraEngine::Display>> displays = UltraEngine::GetDisplays(); //Create window Window = CreateWindow("Ultra Engine", 0, 0, 1000, 600, displays[0], UltraEngine::WINDOW_CENTER); //Create user interface std::shared_ptr<UltraEngine::Interface> ui = UltraEngine::CreateInterface(Window); WindowHandel = Window->GetHandle(); //Create a pixmap std::shared_ptr<UltraEngine::Icon> icon = UltraEngine::LoadIcon("Resources/Images/splashbg.svg"); Icon = icon->Rasterize(2.0); // load custom fonts auto font = UltraEngine::LoadFont("Resources/Fonts/Inter-Black.ttf"); UltraEngine::iVec2 sz = ui->root->GetSize(); std::shared_ptr<UltraEngine::Widget> label1 = CreateLabel("Version: 2023.4.22", 500, 160, 240, 60, ui->root); label1->SetFontScale(1.5); label1->SetFontBold(true); std::shared_ptr<UltraEngine::Widget> lable2 = CreateLabel("Welcome back " + std::string(SteamName) + "!", 500, 210, 300, 60, ui->root); lable2->SetFontScale(1.75); lable2->SetFontBold(true); std::shared_ptr<UltraEngine::Widget> widget = CreateProgressBar(500, 250, 400, 10, ui->root); widget->SetProgress(0.0); std::shared_ptr<UltraEngine::Widget> label3 = CreateLabel("Loading...", 500, 270, 300, 60, ui->root); ProgressTimer = UltraEngine::CreateTimer(500); ListenEvent(UltraEngine::EVENT_TIMERTICK, ProgressTimer, UpdateProgress, widget); //Show the icon ui->root->SetPixmap(Icon); } void LoadingWindow::Close() { Window->Close(); } bool LoadingWindow::UpdateProgress(const UltraEngine::Event& e, std::shared_ptr<UltraEngine::Object> extra) { std::shared_ptr<UltraEngine::Widget> widget = extra->As<UltraEngine::Widget>(); widget->SetProgress(UltraEngine::Mod(float(e.data) / 20.0f, 1.0f)); return true; } I tried following the example in the documentation but am getting this error no matter how I've tried to load a font. Quote Error LNK2019 unresolved external symbol "class std::shared_ptr<class UltraEngine::Font> __cdecl UltraEngine::LoadFont(class UltraEngine::WString const &,enum UltraEngine::LoadFlags)" (?LoadFont@UltraEngine@@YA?AV?$shared_ptr@VFont@UltraEngine@@@std@@AEBVWString@1@W4LoadFlags@1@@Z) referenced in function "public: void __cdecl LoadingWindow::Create(void)" (?Create@LoadingWindow@@QEAAXXZ) DSToolkit C:\dev\UAK\DSToolkit\LoadingWindow.obj 1 Am I missing something? Quote Link to comment Share on other sites More sharing options...
Solution Josh Posted May 21, 2023 Solution Share Posted May 21, 2023 Custom fonts on Windowed interfaces are currently not supported, but you can adjust the text scale and weight on a per-widget basis,and it will be scaled relatively for different DPI settings. On windowed interfaces, the GUI will use the default system font. LoadFont is for use with 3D GUIs and sprites, and is only available in Ultra Engine: https://www.ultraengine.com/learn/LoadFont?lang=cpp 1 Quote My job is to make tools you love, with the features you want, and performance you can't live without. Link to comment Share on other sites More sharing options...
Yue Posted September 14 Share Posted September 14 Change color font? Quote Link to comment Share on other sites More sharing options...
Yue Posted September 14 Share Posted September 14 Solved: 2 Quote Link to comment Share on other sites More sharing options...
Yue Posted September 14 Share Posted September 14 On 5/21/2023 at 6:23 AM, Josh said: Custom fonts on Windowed interfaces are currently not supported, but you can adjust the text scale and weight on a per-widget basis,and it will be scaled relatively for different DPI settings. On windowed interfaces, the GUI will use the default system font. LoadFont is for use with 3D GUIs and sprites, and is only available in Ultra Engine: https://www.ultraengine.com/learn/LoadFont?lang=cpp Solved, sorry, Me in my C++ apprenticeship Change Color Tabber font? 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.