Цветная маскировка с Javascript холстом - PullRequest
0 голосов
/ 11 января 2020

До появления альфа-цветового канала спрайты в играх часто имели цвет маски, который был предопределенным значением, которое не отображалось. Многие спрайт-листы имеют произвольный цвет фона, который я хочу маскировать, используя Javascript canvas.

До сих пор я не смог найти способ сделать это в документации, и при поиске маскировки цвета результаты, похоже, связаны с отсечением изображения с помощью трафаретного изображения или SVG, что не что мне нужно.

Один из способов добиться того, что я хочу сделать, - это прочитать значение каждого пикселя, проверить значение RGB и, если оно совпадает, установить альфа для этого пикселя равным 0. Проблема с этот подход заключается в том, что это будет невыносимо медленно в Javascript. Что может быть более быстрым / лучшим способом маскировки указанного c цвета на изображении?

1 Ответ

0 голосов
/ 11 января 2020

Самый быстрый и лучший способ - использовать формат изображения, который поддерживает прозрачность, например webp или png .

Активы должны готовиться только один раз с помощью специальных инструментов. , не каждый раз, когда кто-то будет использовать ваше приложение.

...