SFML и C++ Уроки \ Разработка игр › Форумы › SFML Graphics › Текст › Ответ в теме: Текст
Объясню оратора выше. В аргумент функции или метода по умолчанию мы передаём копию объекта, т.е. как правильно заметил makish под шрифт выделяется лишняя память которая удаляется при выходе из конструктора. Как по мне особо смысла передавать sf::Font даже через ссылку не совсем целесообразно. Лучше конечно сделать статичный загрузчик ресурсов который всегда будет иметь и передавать лишь 1 копию каждого ресурса, но ты можешь сделать шрифт и как глобальную переменную (Или статичную, принадлежащуюю какому-либо классу. Тогда вызов будет происходить как MyClass:MyFont). Если нужно получить доступ к тексту в другом .h .cpp файле с методом глобальной переменной то прописываешь где надо
1 |
extern sf::Font fontName |
Со статичным членом класса – указываем где надо наш хидер и получам доступ к классу::переменной
Так же лаги могет происходить из за: Кол-во объектов в поле отрисовки, Кол-во объектов в очереди обновления, Кол-во объектов проверяют друг с другом столкновения.
Если хочешь можешь обращатся ко мне через дискорд https://discord.gg/MC3zMHn . На сайт я не особо часто захожу, но всегда могу помочь в дискорде