Просмотр полной версии : Создать силуэт фотографии...
Народ, нужно сделать такой эффект:
Фотка человека загружается с сервера в мувик, потом надо сделать силуэт этого человека и этот силует плавно перемещается из-за экрана в центр. После чего силуэт заменяется на саму фотку.
Задача осложняется тем что количество фоток может быть произвольным.
Суть моего вопроса - как сделать так, чтобы во втором фрейме мувиклипа-контейнера (в него загружается фотка - png с прозрачным фоном) появился силуэт этой фотки тоже с прозрачным фоном? Силуэт закрашенный однотонным цветом.
В каждый фрейм грузишь свою картинку. Силуэт можно в гифе сделать, если контур "резкий". Быстрее подгрузится. Надеюсь, понял правильно проблему?
эээ... так нельзя! надо чтоб картинка была одна. кстати, как указать фрейм в который надо загрузить картинку. я использую класс MovieClipLoader.
неужели нельзя программно создать картинку, залитую белым цветом по контуру человека?
эээ... так нельзя! надо чтоб картинка была одна. кстати, как указать фрейм в который надо загрузить картинку. я использую класс MovieClipLoader.
неужели нельзя программно создать картинку, залитую белым цветом по контуру человека?
В восьмёрке можно , но это достаточно сложно, нужно смотреть цвет каждого пикселя подгруженной картинки и на основании этих данных рисовать контур ... самый простой способ запихать картинку в swf и нарисовать в другом кадре силует ...
В 7 тоже можно. Исходник не шлю - здоровый! Переделывать некогда. Вот код:
//img - имя мувика с картинкой на сцене.
var col:Color=new Color(img);
var dec=5;
var colTrans:Object={rb:0, gb:0, bb:0};
col.setTransform(colTrans);
this.onEnterFrame = function(){
colTrans.rb=colTrans.gb=colTrans.bb+=dec;
col.setTransform(colTrans);
if(colTrans.rb>=255||colTrans.rb<=-255){
dec*=-1;
//delete this.onEnterFrame;
trace('End!\t'+dec);
}
}
Меняем цвет от черного до белого.
В 7 тоже можно. Исходник не шлю - здоровый! Переделывать некогда. Вот код:
//img - имя мувика с картинкой на сцене.
var col:Color=new Color(img);
var dec=5;
var colTrans:Object={rb:0, gb:0, bb:0};
col.setTransform(colTrans);
this.onEnterFrame = function(){
colTrans.rb=colTrans.gb=colTrans.bb+=dec;
col.setTransform(colTrans);
if(colTrans.rb>=255||colTrans.rb<=-255){
dec*=-1;
//delete this.onEnterFrame;
trace('End!\t'+dec);
}
}
Меняем цвет от черного до белого.
Ну если ему нужна тажа фотография, только с эффектом затемнения то такой способ вполне катит, а если ему нужен вектор, то это не подойдёт ...
похоже, похоже ...
эта штука изменяет один из цветов в RGB палитре всего мувика или только битмапа в нём? А с прозрачностью что будет? У меня PNG с прозрачным фоном...
Не надо вектор. Надо битмап. И второй вопрос: как загрузить во второй фрейм мувиклипа?
МОНСТЕР: Круто. :cool: Пасиб!
похоже, похоже ...
эта штука изменяет один из цветов в RGB палитре всего мувика или только битмапа в нём? А с прозрачностью что будет? У меня PNG с прозрачным фоном...
Пжалста.:-)
Меняется только цвет битмапа, прозрачность не затрагивается.
МОНСТЕР: Круто. :cool: Пасиб!
похоже, похоже ...
эта штука изменяет один из цветов в RGB палитре всего мувика или только битмапа в нём? А с прозрачностью что будет? У меня PNG с прозрачным фоном...
Всего мувика ... а прозрачность как была так и будет (скорей всего, я не тестил), а что стоит самому попробовать ?
Не надо вектор. Надо битмап. И второй вопрос: как загрузить во второй фрейм мувиклипа?
Создать там "руками" пустой мув-контейнер и грузить в него кодом.
А нельзя адресоваться на второй фрейм? Типа так :
my_mc.nextFrame(); my_mc.loadMovie("pic.png");
А зачем этот изврат всё можно сделать в одном кадре
А зачем этот изврат всё можно сделать в одном кадре
И то правда! Наплодил мувиков, Надублировал туды картинок - и издевайся как хочешь! :D
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.