В Роблокс Студио, когда вы хотите сделать анимацию движения, поворота, изменения цвета или других свойств объекта, вы используете сервис TweenService. Чтобы задать, как именно должна происходить анимация, используется специальная настройка — TweenInfo.
Эта штука вроде как небольшая, но внутри у неё целых шесть параметров. Разберём, что они делают и зачем вообще нужны.
Что такое TweenInfo?
TweenInfo — это инструкция для Roblox: как быстро, как плавно и каким образом нужно изменить свойство объекта. Например, вы хотите, чтобы кубик медленно поднялся вверх с эффектом "пружины" — вот тут и помогает TweenInfo.
Как это выглядит?
Пример использования:
local TweenService = game:GetService("TweenService")
local part = workspace.Part local tweenInfo = TweenInfo.new( 2, -- Время анимации Enum.EasingStyle.Sine, -- Стиль (тип) анимации Enum.EasingDirection.Out, -- Направление анимации 0, -- Повторений false, -- Переворачивать ли анимацию 0 -- Задержка перед началом )
local goal = {Position = part.Position + Vector3.new(0, 10, 0)} local tween = TweenService:Create(part, tweenInfo, goal) tween:Play()
Теперь разберём, что означают эти параметры в TweenInfo.new(...).
1. Time — длительность
Сколько секунд должна идти анимация.
Например, 2 означает, что объект будет двигаться 2 секунды.
2. EasingStyle — стиль анимации
Как именно будет меняться свойство: плавно, резко, с ускорением или замедлением.
Примеры: Linear, Sine, Bounce, Elastic.
Если хотите что-то мягкое — используйте Sine. Если нужно, чтобы объект "подпрыгнул" — Bounce.
3. EasingDirection — направление анимации
Это дополнение к стилю.
In — начинается медленно, потом ускоряется
Out — начинается быстро, замедляется в конце
InOut — мягко начинается и мягко заканчивается
4. RepeatCount — сколько раз повторить
0 — один раз
1 — два раза и т. д.
Если хотите бесконечную анимацию — используйте -1.
5. Reverses — возвращаться ли назад
Если true, то после завершения анимации объект возвращается в начальное состояние.
Часто используется с RepeatCount, чтобы получить эффект "туда-сюда".
6. DelayTime — задержка перед стартом
Иногда полезно, если вы хотите, чтобы анимация началась не сразу, а через несколько секунд. Например:
Хотите, чтобы кнопка плавно меняла цвет? TweenInfo пригодится.
Нужно, чтобы платформа ехала вверх по рельсам? Без него не обойтись.
Делаете подсказку, которая появляется и исчезает красиво? Опять он.
Заключение
TweenInfo — это ваш способ сделать анимации живыми и интересными. Он может показаться сложным вначале, но на практике вы просто начинаете подбирать нужную скорость и стиль, и всё начинает работать.