Использование Scaleform для рендеринга игровых активов, а не только пользовательского интерфейса
Кто-нибудь пробовал использовать Scaleform для рендеринга реальных игровых ресурсов в игре для iOS, а не только для пользовательского интерфейса. Цель состоит в том, чтобы использовать векторные SWF-файлы, которые будут преобразованы в полигоны через Scaleform, но при этом в игре присутствует код C++ (без AS3). Если вы пробовали это, как вы относились к результатам? Может ли это сделать достаточно быстро?
2 ответа
Вы, конечно, можете использовать Scaleform для этой цели. Scaleform включает API прямого доступа (DAPI), который позволяет C++ управлять ресурсами Flash (это включает создание экземпляров символов во время выполнения и управление их состояниями + время жизни).
Класс GFx::Value является основой DAPI и должен обеспечивать большинство, если не все, функциональные возможности, которые вам понадобятся. Вам все еще может понадобиться код AS3 для склеивания некоторых вещей, но это должно быть незначительным.
Производительность статического векторного содержимого зависит от сложности формы (больше путей, больше стилей => больше треугольников + партии). Я бы попытался ограничить количество анимаций на временной шкале векторов (фигур), потому что изменение формы вызовет повторную тесселяцию. Масштабирование векторного содержимого также вызовет повторную тесселяцию, так что имейте это в виду.
Scaleform использовался в нескольких играх для iOS как весь движок (включая AS3). Вот некоторые примеры:
Ты не знаешь Джека: http://inthefold.autodesk.com/in_the_fold/2013/01/you-dont-know-jack-qa.html