Actionscript 3.0 - Произвольная анимация мувиклипа и изменение его семейства шрифтов с течением времени
У меня есть мувиклип, который состоит из текстового поля с текстом.
Я пытаюсь анимировать этот фрагмент ролика, чтобы он либо перемещался случайным образом по всей анимации, либо чтобы фрагмент ролика отскочил от краев, подобно стандартной экранной заставке, которую вы могли видеть. Медленно меняя текст через множество разных семейств шрифтов
Можно ли получить анимационный ролик в случайном порядке с помощью анимации и можно ли изменить текст на множество разных семейств в медленном переходе.
Надеюсь это имеет смысл:)
1 ответ
Проверьте эту ссылку для некоторых указателей на скриптовую анимацию. Поскольку вы хотите применить это к MovieClip
(в Flash IDE я так понимаю?), вам придется расширять свой класс MovieClip
и назначьте его мувиклипу в библиотеке.
Отскочить от края и т. Д. - это поведение, которое вам придется кодировать самостоятельно. Я бы порекомендовал иметь текущий вектор движения, как
private var movement:Point;
Инициализируйте его в случайном направлении и значение:
movement = new Point(Math.random(), Math.random());
movement.normalize(INITIAL_VELOCITY);
И каждый кадр, добавляя его к текущей позиции фрагмента ролика:
public function update():void {
x += movement.x;
y ++ movement.y;
doBounce();
}
Отказы:
public function doBounce():void {
// something like:
if (x + width + MARGIN) >= stage.width) movement.x *= -1; // bounce off right side
if (x + MARGIN <= 0) movement.x *= -1; // bounce off left side
// similar for y and height
}
Это непроверенный код, но вы должны начать.
На тему перехода между шрифтами: это зависит от того, какой переход вы хотите. Вы могли бы исчезнуть 1 TextField
вне (уменьшая его alpha
свойство до 0 со временем) при постепенном исчезновении второго, с другим шрифтом. Если вы хотите трансформироваться между формами шрифта - я не думаю, что это возможно с динамическим текстом, потому что я не думаю, что вы можете "визуализировать" контуры шрифта / глифы в Graphics
в API, но не уверен на 100%.