Анимация подпрыгивания Unity + C#C#

Место общения программистов C#
Ответить
Anonymous
 Анимация подпрыгивания Unity + C#

Сообщение Anonymous »

В настоящее время я работаю над игровым автоматом в Unity и пытаюсь добиться того, чтобы, как только барабаны перестают вращаться, символы немного подпрыгивали вверх и вниз, прежде чем полностью остановиться. >
В моем коде этот метод сейчас обрабатывает остановку барабанов:

Код: Выделить всё

private void Update(){
if(stopInitiated) {
speed= 0;
}
}
В настоящее время это просто устанавливает скорость барабанов на 0. Если значение плавающей скорости отрицательное, барабаны движутся вверх, а если значение положительное, барабаны движутся вниз. Есть ли способ манипулировать значением скорости так, чтобы создавался приятный небольшой эффект отскока?
Я пробовал использовать этот пример сценария для EasingFunction, но я не совсем понимаю, как работают эти методы. .
Я пробовал:

Код: Выделить всё

private void Update(){
if(stopInitiated) {
speed =  EasingFunction.EaseOutBounce(-0.10f, 0.00f, 0.50f);
}
}
Однако единственное, что происходит, это то, что как только инициируется остановка, барабан просто начинает вращаться вверх навсегда. Я думаю, что метод Update() вызывает float EasingOutBounce каждый раз, когда он выполняется, так что это может быть причиной сброса значения скорости. Можете ли вы подсказать мне, как правильно реализовать такую ​​функцию смягчения?
В противном случае я также был бы рад принять альтернативное решение, такое как lerp, если оно приводит к отскоку эффект.
Благодарю за помощь!

Подробнее здесь: https://stackoverflow.com/questions/792 ... -animation
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»