Пробелы появляются внутри спрайтов от SWF - PullRequest
4 голосов
/ 04 мая 2019

Я использую Adobe Animate для рисования ресурсов для своей игры, однако между различными частями спрайта появляются небольшие промежутки.Как это исправить?

Сравнение того, как оно выглядит в Adobe Animate и как оно выглядит в игре:

expected actual

expected actual

1 Ответ

3 голосов
/ 05 мая 2019

(для ясности, я не эксперт, просто сообщающий вам мои мысли и опыт) * ​​1001 *

Это проблема, с которой я боролся сам;Я полагаю, что проблема заключается в том, как сглаживание выполняется в Animate / Flash против OpenFL.Отключение сглаживания в OpenFL избавит от небольших пробелов, но искусство будет выглядеть плохо.Я полагаю, что Flash сначала отображает все на слое, а затем использует сетку 4x4 пикселей для сглаживания этого слоя, прежде чем продолжить, в то время как OpenFL, с другой стороны, использует сглаживание для каждой нарисованной фигуры, поэтому пропуски, которые вы видите, представляют собой смесь вашихцвет объектов и его окружение (обычно это альфа-канал)

Anti-aliasing

Я пытался решить эту проблему с помощью различных приемов для целей OpenFL в Каире с некоторым успехом, но проблема все еще будет присутствоватьдля всех некаирских целей.Например, HTML5.

Image of render results for experimental OpenFL branch

Экспериментальная ветка OpenFL

Мой лучший совет, когда нужно избавиться от этих артефактов / пробелов, заключается вЛибо разделите проблемные области на разные слои, либо используйте экспорт в качестве растрового изображения, если использование слоев слишком неудобно.

Кстати, есть и официальный форум, и канал Discord для OpenFL, где вы можете получить более хорошие ответы / предложения.

...