Cocos2d-x CCLabelTTF enableStroke занимает много времени

Мы разрабатываем приложение для iOS и столкнулись с проблемой с контурами ярлыков.

Кажется, что создание контуров (на 20-30 этикеток) сейчас занимает больше времени, чем что-либо еще. Задержка создания составляет около 2-3 секунд, что слишком долго.

Кто-нибудь может сказать, какое решение мы могли бы использовать, или почему это так?

Экран инструментов:

введите описание изображения здесь

заранее спасибо

0

Решение

Если текст метки необходимо изменить во время выполнения, рассмотрите возможность использования растровых шрифтов с предварительно отрисованными контурами. Или создайте все ярлыки заранее и используйте их повторно, если их текст не изменяется.

Вы найдете объяснение, почему изменение текста, а также свойств теней и контуров происходит медленно в Ссылка на класс CCLabelTTF (для Cocos2D-Swift, но то же самое относится к cocos2d-x) и Раздел ярлыков в руководстве разработчика (тоже самое).

В частности, учтите, что изменение размера шрифта или отступов увеличивает текстуру метки и само по себе может увеличить время, необходимое для рендеринга тени / контура. Так же как и изменение размера тени / контура. Это не обязательно должно быть потому, что рендеринг шрифта в cocos2d-x мог измениться.

0

Другие решения