Имитация эффектов окна Ubuntu во Flash с AS3 - PullRequest
0 голосов
/ 24 января 2011

Мне нужно сделать эффект перемещения окон из следующего Эффекты окон Ubuntu видео во Flash. В основном окно трансформируется, пока вы его перетаскиваете. Я хочу иметь мувиклип, и когда я перетаскиваю его для преобразования таким же образом, как преобразуют окна Ubuntu. Я считаю, что есть какое-то отношение к матричным преобразованиям.

Любая помощь очень ценится!

Ответы [ 3 ]

1 голос
/ 24 января 2011

Полагаю, вы имеете в виду эффект колебания окон?

Сначала необходимо заменить MovieClip на Bitmap (создайте Bitmap + BitmapData, затем draw() MovieClip для вновь созданного BitmapData).Имейте в виду, что вам нужны дополнительные отступы, так как эффект переполняет исходную ограничивающую рамку.*

Теперь сложная часть, которая потребует немного математики (но вы, вероятно, можете найти похожие алгоритмы в Интернете): вам нужно смещать пиксели - один за другим - каждый кадр в зависимости от времени,амплитуда, угол, ..., (и предыдущие значения) движения.Существует много способов создания эффекта, но смещение, вероятно, является первым ключом к тому, что вы ищете.

Но, прежде чем идти туда, я настоятельно рекомендую создать прототип с одним объектом, который будет действовать как один пикселей.Например, создайте базовую Shape (например, окружность), которая будет анимироваться эластичным способом при перетаскивании (только движение по оси X / Y, без деформации формы).

*) В качестве альтернативы вы можете работать сотдельную карту смещения BitmapData и примените ее к исходному мувиклипу с помощью фильтра смещения, но она имеет тенденцию быть немного более опасной с точки зрения производительности.

1 голос
/ 25 января 2011

Я думаю, что здесь показана наиболее эффективная методика: http://www.flashandmath.com/advanced/p10triangles/

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

самая большая проблема - это перемещение якорейвокруг.эта вторая статья может также дать вам подсказку: http://www.neuroproductions.be/experiments/nurbs/

вы также можете найти «эффект джинна» в ActionScript, существует довольно много доступных источников.как: http://www.sephiroth.it/weblog/archives/2010/06/flash_genie_effect_using_drawtriangle.php

счастливого кодирования, ура :))

@ daniel спасибо за отзыв :)

0 голосов
/ 24 января 2011

вы могли бы применить пиксельный фильтр изгиба во время его перетаскивания.

взгляните на http://en.nicoptere.net/?p=302 там есть пример, который показывает некоторые из деформаций, у вас все еще есть способы придать ему такой органичный вид, но это возможно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...