Я не имею ввиду переводить мувиклипы в битмапы а потом искажать уже,
вообщем представляю себе алгоритм таким:
1. Вычисляем 4 угловые точки по которым нужно трансформировать мувик.
2. Дублируем мувиклип.
3. Искажаем мувик по первым трем точкам, по ним же рисуем тругольную маску и применяем ее к этому муву.
4. Проделываем то же но для последних трех точек.
В итоге получаем мувиклип искаженный перспективно (визуально) с сохранением интерактивности (кнопки внутри него, текстовые поля и т.д.).
Единственное качество такого мувика будет зависеть от количества треугольников на которые мы его делим, а чем больше треугольников, тем больше копий мувиклипов, и производительность от этого может сильно пострадать.
updated:
Это я ошибся на счет интерактивности, если мы дублируем клип то и допустим кнопок у нас будет больше и текстовых полей, и реагировать ихние части будут каждая по своему. Значит такой вариант (с разбиением на треугольники) не катит для интерактивности. Остается только карта смещений...
Если без внутренней интерактивности то все намного проще, просто в onEnterFrame создаем битмап текущего кадра и искажаем его без всяких там масок (с помощью beginBitmapFill() ). Этот вариант подходит и для мувиков с анимацией и для видео (и потокового тоже).
Но интересно добиться именно интерактивности внутри искажаемого мувика.
Может есть еще у кого нибудь идеи в плане реализации этой задачи, более оптимальные чем я задумал.
Кстати сложный градиент для фильтра смещения можно с помощью матриц нарисовать, но я пока не могу въехать в сам алгоритм применения этого фильтра. Это нужно спрашивать таких монстров как Silin или iNils, они точно в этой теме знают толк.
