Не отображается текст в C++ SFML
Есть класс Program, передающий в объекты типа Button данные о позиции, цвете, шрифте и размере полю Button::text типа sf::Text через конструктор. В классе Button есть функция Button::render(sf::RenderTarget* target = nullptr) {target->draw(text)}, вызывающаяся на каждом обновлении экрана. Тем не менее, текст не выводится, хотя шрифт загружен, цвет установлен непрозрачный, а размер шрифта всегда равен минимум 15-ти. Привожу упрощенный код:
Program.cpp:
#include "Program.h"
Program::Program() {
window = new sf::RenderWindow(sf::VideoMode(800, 600), "Hello, world!");
font.loadFromFile("arial.ttf");
button = Button(font, sf::String(L"Hello, world!"), 15, sf::Color(0, 0, 0, 255));
}
Program::render() {
window->clear();
button.render(window);
window->display();
}
Button.cpp:
Button::Button(sf::Font& font, sf::String text, int characterSize, sf::Color textColor) {
text = sf::Text(text, font, characterSize);
text.setFillColor(textColor);
}
Button::render(sf::RenderTarget* target) {
target->draw(text);
}
Я пробовал передавать другие цвета, размеры, шрифты, позиции, но ничего не решило проблему. Я уверен, что шрифт поддерживает все символы, которые передаются в конструкторе, так как с другой структурой все работало. Я пробовал ставить константные значения на цвет, размер, шрифт, позицию в конструкторе, это также не меняло ничего.
Если нужно - скину репозиторий.
В чем может быть проблема или как ее диагностировать?