Обратное колортрансформа альфа AS3

Я затухаю растровое изображение в AS3, неоднократно применяя ColorTransform каждый кадр к его BitmapData;

_bitmap.colorTransform(_bitmap.rect, new ColorTransform(1, 1, 1, .9, 0, 0, 0, 1));

При применении видимого реверса, чтобы затемнить его, я получаю обесцвеченное изображение.

_bitmap.colorTransform(_bitmap.rect, new ColorTransform(1, 1, 1, 1.1, 0, 0, 0, 1));

Похоже, проблема возникает только с полностью затемненными изображениями. Если я пройду только часть пути, это поправимо.

затухание:

http://lh6.ggpht.com/_gjsCWAV_CZc/S0Ha7AhgtUI/AAAAAAAAC4o/Rs9S_PtrIaI/s400/fading-out.png

исчез

http://lh3.ggpht.com/_gjsCWAV_CZc/S0Ha7ttzGbI/AAAAAAAAC4s/FjlAv5bPFCo/s400/faded-back.png

1 ответ

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

Другие вопросы по тегам