PDA

Просмотр полной версии : setRGB влияет на DropShadow?


nOobCrafter
16.03.2009, 20:16
Ситуация такая, делаю обьект, кидаю на него фильтр - дроп шадоу, так же кнопока при нажатию на которую происходит изменение цвета этого самого обьекта. Вместе с цветом меняются настройки фильтра — патчиму? пример ниже. (заметьте с блюром все ок)
import flash.filters.DropShadowFilter;
import flash.filters.BlurFilter;

var j:Number = 0;
var place:MovieClip = _root.createEmptyMovieClip("place" + j, j);
place.beginFill(0xCCCCCC, 100); // рисуем кубики случайного цвета
place.moveTo(- 3, - 3);
place.lineTo(60 + 3, - 3);
place.lineTo(60 + 3, 20 + 3);
place.lineTo(- 3, 20 + 3);
place.lineTo(- 3, - 3);
place.endFill();
place.filters = [new DropShadowFilter(2, 45, 0x333333, 1, 2, 2, 1, 3)];
//place.filters = [new BlurFilter(15, 15, 3)];
place._x = 20 - 3 + (place._width - 3 + 20); // ставим их по х
place._y = 20; // вычисляем ее "Y"

btn.onRelease = function()
{
var place_col:Color = new Color(place);
place_col.setRGB(0xCCCCCC);
}
З.Ы. так же пробовал ColorTransform тот же результат. такое чувство что меняется сам цвет фильтра, но почему непонял, повторное применение при нажатии ничего не дает

Wolsh
16.03.2009, 21:53
Да, трансформация действует на весь клип вместе с тенью, свечением, огранкой.

nOobCrafter
17.03.2009, 11:34
гхым.. а как мне тогда оставить тень неизменной? О_о даже если я назначаю фильтр после применени трансформации результата нет(
btn.onRelease = function()
{
var place_col:Color = new Color(place);
place_col.setRGB(0xCCCCCC);
place.filters = [new DropShadowFilter(2, 45, 0x333333, 1, 2, 2, 1, 3)];
}

fljot
17.03.2009, 12:18
ну вам же написали, что действует цветовая трансформация действует на всё. и неважно в какой последовательности применять.
поместите свой клип в ещё один контейнер и применяйте изм цвета ко вложенному, а тень ко всему

nOobCrafter
17.03.2009, 12:41
ясна спс...
З.Ы. помогло ;)