Я создаю игру LibGDX, и мне нужно увеличивать и уменьшать масштаб камеры. Но когда я делаю camera.zoom = 1.2f;
, он просто «перескакивает» к этому значению. Вместо этого я хочу иметь плавный зум.
Мой вопрос: как лучше всего плавно масштабировать?
Я хочу увеличить, как этот график ниже. y=0
— это начало cam.zoom
, y=100
— желаемое cam.zoom
, а ось X показывает время.
Должен ли я использовать cam.zoom = f(time);
? (с некоторой модификацией f(x)
)
time
— общее время, прошедшее с начала масштабирования.
Или лучше использовать:
cam.zoom += (desiredZoom - cam.zoom) * delta * scalar;
delta
– это время между двумя кадрами, аscalar
– число с плавающей запятой, которое будет регулироваться для установки скорости.
Или есть другой, лучший способ? Что вы думаете?
Большое спасибо!