Просмотр полной версии : эффект граффити во флаш
теряюсь в догадках возможно ли такое
нужно:
создать граф редактор, где инструмент рисования балон с краской, отсюда гардиентные заливки, разводы и тд
я думаю это очень проблематично такое во флаш сделать, :confused:
плиз откликнитесь кто такое в инете видел или знает как сделать или от чего оттолкнуться
все зависит от того, какие конкретные требования к графике. в каких-то случаях легче сделать API, в каких-то - маски, в каких-то - attachMovie. но все это будет выглядеть в любом случае слабее shockwave
согласен этот редактор
вроде игрушки на сайте, должен сохранять результаты рисования на сервер, наверно в специфическом формате или xml.
поставленая задача вполне реализуема и особых кандыбаний возникнуть не должно
спасибо конечно что порадовали
но мне б посмотреть как это выглядит хотя бы
чтоб аэрографом рисовать можно было
дайте если можно линк на пример какой нибудь
буду очень благодарен
вот, смотри. кстати, хочется отметить, что этот пример мне кажется довольно посредственным и в области рисования можно сделать намного лучше
да незашт, эт даже не я делал
я вижу что не ты
но спсиба всёравно буду с глюканами этого кода бороться, края сглаживать,
а то бедасто рисует он как то,
во всяком случае попробую
TERRORist
18.07.2005, 22:24
ион ты нехороший человек 8(
во-первых, сделай лучше если можешь, или не выкладывай и не ругай.
во-вторых это я! сделал!
и нечего там сглаживать. поставь бест качество.
ну тода TERRORistу
местный респект и спасиба
начал свой писать с сохранением результата в жпг на серваке
TERRORist
19.07.2005, 12:04
всегда пожалста!
такую вещицу я уже где-то видел, и оставил свой автограф B)
только зачем в Jpeg? у тебя хостинг резиновый? пусть и грузит, и рисует одна флеша.
хостинг не резиновый но и не 500 Мб
Т.е если без Жпг предлагаешь сделать какой то специфический формат чтото вроде тхт с координатами графики,
Зачем это, я понимаю меньше занимает но
здесь надо просто - юзер нарисовал картинку, картинка засэйвилась, потом админ посмотрел Jpg и выбрал победителя, самый крутой рисунок
Так в твоём случае можно сделать во флеше просматривалку, что бы админ мог посмотреть всё и без jpeg
TERRORist
19.07.2005, 16:12
"здесь надо _просто_ - юзер нарисовал картинку, картинка _засэйвилась_",
Если для тебя это просто, то флаг тебе в руки! Как же ты интересно сэйвить-то в жпг собрался?) Шобы просто?
Я щас часа три угробил чтобы вектор сохранять (вроде работает, но трабла: в localhost сохраняет, но не грузит в себя, открываешь D:/www/flash.swf - показывает! Шайтан! В чем проблема???)
Кстати какой адресок будет у твоей работы?
ион ты нехороший человек 8(
во-первых, сделай лучше если можешь, или не выкладывай и не ругай.
во-вторых это я! сделал!
и нечего там сглаживать. поставь бест качество. Не, кривые у тебя там рваные получаются, если быстро водить, я пытался писать свою сделал только карандаш, но в основу положил другой алгоритм и все стало красивее, ща по сусекам поскребу, найду и выложу
интересно как ты будешь имитировать графити линиями
Ну, можно чё-нить вроде curveTo попробовать, хотя причем тут графити, я рисовалку не под это затачивал
А вопрос читал ?
curveTo(); кроме линии нарисовать ничего несможет ))) тут без мувиков необойтись ...
я хотел сделать и слои и все прочее, просто времени ща нет, эт я на досуге минут за 15 написал
TERRORist
19.07.2005, 22:22
Не, кривые у тебя там рваные получаются, если быстро водить, я пытался писать свою сделал только карандаш, но в основу положил другой алгоритм и все стало красивее, ща по сусекам поскребу, найду и выложу
Ион, ты бы хоть хэлп посмотрел бы в ней прежде чем хаять! Флеша заточена как под быстрые, так и под медленные компы. По умолчанию стоит низкая частота выборки (3 пикселя). Поставь 1 - и будет точно так же как и в твоем примере. Но недолго!)
про выюорку это конечно всё правильно
но думаю, нормально сделано по критерию,
качество рисования<->производительность
кста мне не нужно растровой точности
полудетская рисовалка для школьников, только чтоб нормально было, удобно пографитить на стене дома
Ион, ты бы хоть хэлп посмотрел бы в ней прежде чем хаять! Флеша заточена как под быстрые, так и под медленные компы. По умолчанию стоит низкая частота выборки (3 пикселя). Поставь 1 - и будет точно так же как и в твоем примере. Но недолго!) комп у меня мощный (P4 2.4GHZ) дело не в этом даже когда ставишь частоту 1 при рисовании кистью получаются разрывы, если быстро водить
TERRORist
20.07.2005, 14:46
а что, в твоем примере не получаются чтоли?(
если уж так хочется чтобы не было разрывов, нада аппроксимизирующую функцию, чтоб по 2-3 узла за кадр добавляла.
TERRORist
20.07.2005, 14:51
или может у тебя прозрачность стяла на 20%?
нет, прозрачность на 100 стояла. у меня разрывов нет. скачай-посмотри, 400 байт в архиве. и я без аппроксимизирующей функции обошелся
TERRORist
20.07.2005, 18:18
Ion ты угомонишься? Вот ето что на картинке - явно пропуски агроменные между координатами. А у меня Пень 1800 Мгц! И не нада твой примитив мешать с моей великолепной работой.
И ваабсче приципы разные - там lineTo, а у меня DuplicateMovieClip
с мувиками много не нарисуешь, на проц большая нагрузка
Ion ты угомонишься? Вот ето что на картинке - явно пропуски агроменные между координатами. И не нада твой примитив мешать с моей великолепной работой.
Не спорю, что пропуски, только у меня они соединяются, а у тебя нет!!!!!!!!!!!! Я ещё раз говорю: то, что я выложил - это бета версия, написанная за 15 минут!!!!!!!!!!!! Я считаю, что без необходимости не нужно запихивать на лист кучу клипов, а рисовать в одном, раз уж флеш предоставляет нам такую возможность. И нефик называть великоепной работу, в которой даже савинг не предусмотрен! Хотя в общем, я считаю её хорошей и заслуживающей похвалы
TERRORist
20.07.2005, 23:57
Вот вы, KUZEN и Ion, и облажались!
Сделал я флеху которая в один мувик рисует. Тормозит почти СРАЗУ! Что и неудивительно, так как в отличие от моей дергает монструозный мувик _каждый_ кадр. А моя ложила клип на место и забывала о нем..
Таким образом моя флеша является единтсвенно правильной :D
TERRORist
20.07.2005, 23:59
аттач забыл !(
всё равно у тебя линии рваные!
чуваки, ничего вы флешем не сделаете нормального в плане редактора, пока нет setPixel
TERRORist
21.07.2005, 14:04
всё равно у тебя линии рваные!
Это не у меня линии рваные, это у тебя комп медленный. С тобой предложенным способом ваабще рваньё!) Вот купишь сервант на пару десятков гигагерц, все будет зае**сь.!)
Хочешь нерваные - пиши аппроксимизирующую функцию. Тормозить будет еще больше, но зато без пропусков.
Вывод чуваку-который-создал-тему: Напиши чего нить вроде "Через минуту приедут менты, а краска уже заканчивается! Рисуй чего успеешь!" Введи ограничение на кол-во мувиков и время, чтобы комп не сильно заторможался. Ну и конечно прынцип рысования как в моем мега-редакторе.
Это не у меня линии рваные, это у тебя комп медленный. С тобой предложенным способом ваабще рваньё!) Вот купишь сервант на пару десятков гигагерц, все будет зае**сь.!)
Хочешь нерваные - пиши аппроксимизирующую функцию. Тормозить будет еще больше, но зато без пропусков.
Вывод чуваку-который-создал-тему: Напиши чего нить вроде "Через минуту приедут менты, а краска уже заканчивается! Рисуй чего успеешь!" Введи ограничение на кол-во мувиков и время, чтобы комп не сильно заторможался. Ну и конечно прынцип рысования как в моем мега-редакторе. У тебя он каждый фрейм (которых в за секунду всего 25 проходит) при нажатой кнопке мыши рисует в месте курсора круг, а у меня он каждую миллисекунду (1000 раз в секунду!!!!!!!) ставит новую точку на ломанной линии и соединяет эту точку с предидущей
TERRORist
21.07.2005, 15:23
блин сколько раз говорить надо не путай хрен с редькой!!!!!) принципы разные!!!!
если ты думаешь что он у тебя 1000 раз в секунду точки ставит посмотри на скриншот! специально для таких как ты сделал! координаты мыши изменяются один раз(!!!!) за кадр, так что ты зря каждую миллисекунду поствил! ты опять облажался!)
блин сколько раз говорить надо не путай хрен с редькой!!!!!) принципы разные!!!!
если ты думаешь что он у тебя 1000 раз в секунду точки ставит посмотри на скриншот! специально для таких как ты сделал! координаты мыши изменяются один раз(!!!!) за кадр, так что ты зря каждую миллисекунду поствил! ты опять облажался!) тогда почему, когда я поставил 1 фпс ничего не изменилось?
TERRORist
21.07.2005, 17:20
а это означает что твоя флеха начинает тотально тормозить после первых нескольких кадров!)
а это означает что твоя флеха начинает тотально тормозить после первых нескольких кадров!) а твоя не тормозит?
TERRORist
21.07.2005, 21:02
если сравнивать граффити, твою и мою, то моя-то меньше тормозит!
у наших флешек одинаковый принцип рисования! с чего им по-разному тормозить? одинаково при прочих равных условиях!
TERRORist
21.07.2005, 21:47
у наших флешек одинаковый принцип рисования! с чего им по-разному тормозить? одинаково при прочих равных условиях!
Чувак, ты похоже совсем запутался. Моя копирует готовые мувики и ложит каждый на новый слой. Тобой предложенная рисует курвами программно круг в один слой и программно его заливает, отчаго тормозит больше.
Тобой предложенная рисует курвами программно круг в один слой и программно его заливает, отчаго тормозит больше. Ты чё, совсем ох!"л? Вот код моей:
// Action script...
// [onClipEvent of sprite 1 in frame 1]
onClipEvent (mouseDown) {
Mouse.hide();
tim = setInterval(_root.pen, 1);
updateAfterEvent();
}
onClipEvent (mouseUp) {
Mouse.show();
clearInterval(tim);
}
onClipEvent (enterFrame) {
_root.moveTo(_root._xmouse, _root._ymouse);
}
// [Action in Frame 1]
function pen() {
_root.lineTo(_root._xmouse, _root._ymouse);
updateAfterEvent();
} // End of the function
var x;
var y;
_root.lineStyle(1, 0, 100);
Вот твой код:
// Action script...
// [Action in Frame 1]
colors = [11141375, 11141375];
alphas = [100, 0];
ratios = [0, 255];
draw = false;
onMouseDown = function () {
draw = true;
};
onMouseUp = function () {
draw = false;
};
onEnterframe = function () {
if (draw) {
matrix = {matrixType: "box", x: _root._xmouse - 10, y: _root._ymouse - 20, w: 20, h: 20, r: 0};
lineStyle(0, 255, 0);
beginGradientFill("radial", colors, alphas, ratios, matrix);
moveTo(_root._xmouse, _root._ymouse);
curveTo(_root._xmouse + 10, _root._ymouse, _root._xmouse + 10, _root._ymouse - 10);
curveTo(_root._xmouse + 10, _root._ymouse - 20, _root._xmouse, _root._ymouse - 20);
curveTo(_root._xmouse - 10, _root._ymouse - 20, _root._xmouse - 10, _root._ymouse - 10);
curveTo(_root._xmouse - 10, _root._ymouse, _root._xmouse, _root._ymouse);
endFill();
} // end if
};
И где ты в моей нашел заливку, а в твоей копирование мувиков?!
Война миров какая то :) .Может под шумок и на мой вопрос ответите,который я уже кстати задавал тов.TERRORist'у?Как нарисовать монолитную безконтурную заливку путём добавления кругов,тоже нарисованых програмно.
Если рисовать круги с прозрачными контурами,то потом комп начинает тормозить при скролинге и масштабировании,НО ведь если просто нарисовать такую заливку без контуров никаких тормоз не наблюдается.
Спасибо заранее!
Пэ Эсс:от этого зависит судьба червяков....
погодите пару месяцев, выйдет флаш 8 и там можно будет сделать хоть фотошоп =)
да, ещё по поводу флеш 8: чёт бета-версия флеш плеера 8 уже есть, а в чем вся эта красота разрабатываться будет?
хм....сделал простенький пример с рандомайзером на сет пиксель...в принципе чуть подредактировать добавить настроек и все путем, будет графити =)
TERRORist
22.07.2005, 00:06
Ты чё, совсем ох!"л? Вот код моей:
// Action script...
// [onClipEvent of sprite 1 in frame 1]
onClipEvent (mouseDown) {
Mouse.hide();
tim = setInterval(_root.pen, 1);
updateAfterEvent();
}
onClipEvent (mouseUp) {
Mouse.show();
clearInterval(tim);
}
onClipEvent (enterFrame) {
_root.moveTo(_root._xmouse, _root._ymouse);
}
// [Action in Frame 1]
function pen() {
_root.lineTo(_root._xmouse, _root._ymouse);
updateAfterEvent();
} // End of the function
var x;
var y;
_root.lineStyle(1, 0, 100);
Вот твой код:
// Action script...
// [Action in Frame 1]
colors = [11141375, 11141375];
alphas = [100, 0];
ratios = [0, 255];
draw = false;
onMouseDown = function () {
draw = true;
};
onMouseUp = function () {
draw = false;
};
onEnterframe = function () {
if (draw) {
matrix = {matrixType: "box", x: _root._xmouse - 10, y: _root._ymouse - 20, w: 20, h: 20, r: 0};
lineStyle(0, 255, 0);
beginGradientFill("radial", colors, alphas, ratios, matrix);
moveTo(_root._xmouse, _root._ymouse);
curveTo(_root._xmouse + 10, _root._ymouse, _root._xmouse + 10, _root._ymouse - 10);
curveTo(_root._xmouse + 10, _root._ymouse - 20, _root._xmouse, _root._ymouse - 20);
curveTo(_root._xmouse - 10, _root._ymouse - 20, _root._xmouse - 10, _root._ymouse - 10);
curveTo(_root._xmouse - 10, _root._ymouse, _root._xmouse, _root._ymouse);
endFill();
} // end if
};
И где ты в моей нашел заливку, а в твоей копирование мувиков?!
Блин Ion твоя тупость начинает меня напрягать. К тому же ты, чувак, начинаешь хамить.. Под "твоим способом" я конечно имел в виду программное рисование кругов в одном слое(помнится кто-то его еще с пеной в одном местехвалил), под своим - копирование мувика, и забыли об етом!(
E-mail, ПРИВЕТ!
Карашо когда есть маленькая тайна!) Есть над чем подумать!
Пардон, мне тебя тогда все же не удалось переубедить. Уж поверь, не получится.
Лучше сделай, как сделал я:
есть массивы x и y. По ним сторится линия. При взрыве координаты, лежащие в епицентре, передвигаются по направленю от центра епицентра. Образуется идеальная полукруглая ямка. Проверено и работает на ура, не тормозит ваабсче.
если вы не умеете нормально говорить, лучше вообще не говорите. еще одно высказывание типа oх5л или, твоя тупость, будет караться предупреждением и тема будет закрыта.
зы http://www.protozoo.com/?p=176
это не графити, но очень похоже на спрей если доработать будет похожим на графити =)
поигрался, с спреем аля паинт/фотошоп(атач)
осталось решить маленькую дилему, я пшикал дизом на зеркало на протяжении 5 минут и получаться примерно как во флэшке, но если посмотреть на графити они сделаны плавнее, и как сделать из кучи точек, рисунок понятия не имею, но пуливилизатор то и в спрее, и болончике с краской один и тот же, значит у мастера должно получиться и так нарисовать нечто красивое.
Блин Ion твоя тупость начинает меня напрягать. К тому же ты, чувак, начинаешь хамить.. Под "твоим способом" я конечно имел в виду программное рисование кругов в одном слое(помнится кто-то его еще с пеной в одном местехвалил), под своим - копирование мувика, и забыли об етом!( когда это у меня было программное рисование кругов в 1-м слое?!
если вы не умеете нормально говорить, лучше вообще не говорите. еще одно высказывание типа oх5л или, твоя тупость, будет караться предупреждением и тема будет закрыта. а по-моему, слова с частичной заменой букв вполне цензурны
я сказал что будет если подобное повториться, мнение Ion'а я учел и принял к сведению, как нибудь обдумаю
TERRORist
22.07.2005, 12:55
ион ты етот способ предложил и сказал что он меньше тормозить будет. и уже забыли об етом!
а-а-а-а-а!понял наконец!круто!и всамом деле!супер!спасибо огромное!! :) :) :)
смотреть только тем у кого восьмёрка ужо )))
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.