2015-12-07 5 views
0

Я знаю, что это задано очень много, но я потратил 4 часа на поиск и попытку, и ничего не работает. Я очень новичок в Flash и AS3, поэтому, пожалуйста, несите меня.AS3 Изменение насыщенности при опрокидывании с помощью Flash

В начале я хочу, чтобы мое изображение было похоже на 50% черно-белое, и когда я прокручиваю его, он должен восстановить насыщенность оргинала (не мгновенно, а затухание). Когда мышь снижается, изображение должно вернуться к 50% черно-белому.

Я нашел this замечательная вещь, но код довольно сложный, и я не знаю, как применить его к моей идее.

Я благодарен за каждый отзыв!

+0

4 часа !! Всего 4 часа! Если я задал вопрос по каждой проблеме, в которой я провел всего 4 часа, у меня будут сотни вопросов, размещенных здесь еще сейчас! Не торопитесь, ищите, и снова и снова ищите, не торопитесь ... Также я не вижу никакого кода (любая попытка) в вашем вопросе ... – akmozo

+0

Да, кода нет, потому что я не Знать, что делать! все, что я выяснил до сих пор, заключается в том, что это не так просто, и мне нужны модные ColorFilters. спасибо, что не помогали вообще. – BenQCat

+1

Когда я смотрю на ваш вопрос, я не вижу никаких усилий, 4 часа ничего, и иногда я провожу больше часов, чем 4 часа, чтобы ответить или решить проблему здесь, в SO! Я стараюсь помочь, как могу, и мне не платят за это ... – akmozo

ответ

1

Самого простой способ заключается в использовании ColorMatrix класса предоставленного Grant Skinner - это позволяет регулировать насыщенность в диапазоне [-100, 100]:

Вот пример того, как сделать объект отображения черно-белым:

var matrix:ColorMatrix = new ColorMatrix(); 
    matrix.adjustSaturation(-100); 
    var filter:ColorMatrixFilter = new ColorMatrixFilter (matrix.toArray()); 

    //apply black and white filter to any DisplayObject 
    myImage.filters = [filter]; 

UPD:

для промежуточных кадров снова самый простой способ заключается в использовании gtween (есть решение, основанное на GreenSock | TweenLite с той же функциональностью, но я привык GTween как более lightwei GHT раствор)

Вы можете загрузить исходные файлы из link, вот копия/паста из GTweenColorAdjustdemo, что изменения насыщенности и контрастности:

 ColorAdjustPlugin.install(); 
     new GTween(image, 3, {saturation:-100, contrast:70}, {repeatCount:0, reflect:true}); 
+0

да, но он тоже хочет, чтобы твин ... медленно исчезал до полного цвета. Возможно, некоторые 'enterFrame' проверяют переменную типа' maxAmount' и приращение по мере необходимости .. но в любом случае считают, что Asker считает, что «ColorFilters» слишком причудливы, поэтому они, вероятно, упадут в обморок, когда дело доходит до настройки всего кода. –

+0

ОК, я обновил свой ответ с помощью tweening-примера – fsbmain

+0

GTweenColorAdjust кажется тем, что я хочу (без изменения контраста), но я не уверен, как я могу его использовать. Я загрузил GTween, но мне нужно его установить? Поместите его в флеш-библиотеку? – BenQCat