Как увеличить скорость анимации в unity
Перейти к содержимому

Как увеличить скорость анимации в unity

  • автор:

Как реализовать частоту анимации под скорость

Такая проблема, при увеличении скорости частота анимации (Пульса), только лишь ускоряется и количество анимации на мониторе остаётся прежним. Как сделать так чтоб частота анимации увеличилась
(то есть больше отрисовывалась). Помогите пожалуйста.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
public AnimationCurve Puls, fibrilationCurve, Asistolia, defibrilation; private float timeElapsed = 0; private bool started; public float speed = 5f; private Rigidbody body; private Vector3 startPosition; public int status; public Transform SpawnPoint; private void Update() { if (Input.GetKeyDown(KeyCode.Q)) status = 0; if (Input.GetKeyDown(KeyCode.W)) status = 1; if (Input.GetKeyDown(KeyCode.E)) status = 2; } public void ReturnPuls() { StartCoroutine(Wait()); } private IEnumerator Wait() { gameObject.GetComponentTrailRenderer>().emitting = false; yield return new WaitForSeconds(0.1f); gameObject.transform.position = new Vector3(SpawnPoint.transform.position.x, SpawnPoint.transform.position.y); yield return new WaitForSeconds(0.1f); if (gameObject.transform.position == SpawnPoint.transform.position) gameObject.GetComponentTrailRenderer>().emitting = true; else { gameObject.transform.position = new Vector3(SpawnPoint.transform.position.x, SpawnPoint.transform.position.y); gameObject.GetComponentTrailRenderer>().emitting = true; } } private void Awake() { body = GetComponentRigidbody>(); startPosition.y = gameObject.transform.position.y; startPosition.z = gameObject.transform.position.z; } private void FixedUpdate() { if (!started) { started = true; timeElapsed = 0; } switch (status) { case 0: timeElapsed += Time.deltaTime * speed; body.MovePosition(new Vector3(gameObject.transform.position.x + speed * Time.deltaTime, startPosition.y + Puls.Evaluate(timeElapsed), startPosition.z)); started = true; break; case 1: timeElapsed += Time.deltaTime * speed; body.MovePosition(new Vector3(gameObject.transform.position.x + speed * Time.deltaTime, startPosition.y + fibrilationCurve.Evaluate(timeElapsed), startPosition.z)); break; case 2: timeElapsed += Time.deltaTime * speed; body.MovePosition(new Vector3(gameObject.transform.position.x + speed * Time.deltaTime, startPosition.y + Asistolia.Evaluate(timeElapsed), startPosition.z)); break; case 3: timeElapsed += Time.deltaTime * speed; body.MovePosition(new Vector3(gameObject.transform.position.x + speed * Time.deltaTime, startPosition.y + defibrilation.Evaluate(timeElapsed), startPosition.z)); break; } }

Добавлено через 1 час 40 минут
Решил проблему удаления speed по оси X помог Alkos26Rus

body.MovePosition(new Vector3(gameObject.transform.position.x * Time.deltaTime, startPosition.y + Puls.Evaluate(timeElapsed), startPosition.z));

AnimationState.speed

Благодарим вас за то, что вы помогаете нам улучшить качество документации по Unity. Однако, мы не можем принять любой перевод. Мы проверяем каждый предложенный вами вариант перевода и принимаем его только если он соответствует оригиналу.

Ошибка внесения изменений

По определённым причинам предложенный вами перевод не может быть принят. Пожалуйста попробуйте снова через пару минут. И выражаем вам свою благодарность за то, что вы уделяете время, чтобы улучшить документацию по Unity.

AnimationState.speed

Скорость воспроизведения анимации. 1 — нормальная скорость воспроизведения.

Отрицательная скорость воспроизведения будет проигрывать анимацию в обратном направлении.

using UnityEngine; using System.Collections;

public class ExampleScript : MonoBehaviour < public Animation anim;

void Start() < // Walk backwards anim["Walk"].speed = -1.0f;

// Walk at double speed anim["Walk"].speed = 2.0f; > >

Copyright © 2020 Unity Technologies. Publication 2019.3

Как изменить скорость анимации?

Нагуглил что можно создать переменную подвязать ее к скорости и из кода ее изменять, но когда добавляю 2 transition к анимации, пропадает вкладка скорости и остальные, показывающиеся с ней. На втором скриншоте показана та же анимация что и Move left, только без transition, поэтому со вкладкой speed.

94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

Как реализовать частоту анимации под скорость
Такая проблема, при увеличении скорости частота анимации (Пульса), только лишь ускоряется и.

Как увеличить скорость анимации в игре?
народ, подскажите! как можно увеличить до максимума скорость анимации. суть такая, запускаю игру.

Как сделать так чтобы скорость анимации изменялась с кнопок
#include <fstream> #include <iostream> #include <Windows.h> using namespace std; int.

Во время анимации менять скорость моделирования, к тому же нужно менять скорость каждого автомобиля
Всем добрый вечер. Я недавно познакомился с С#, поэтому застрял. Я разрабатываю приложение для.

87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

как изменить расширение экрана в анимации в делфи?
как изменить расширение экрана в анимации в делфи?

QPropertyAnimation. Как изменить цвет кнопки во время анимации?
Как во время анимации изменить цвет кнопки? Чтобы, например, в начале один цвет был, в конце.

Как изменить размер анимации и создать скриншот темы оформления для телефонов?
как изменить размер анимации чтобы она при этом осталась анимацией и как можно создать скриншот.

Как изменить цвет круга на пару секунд используя класы для Анимации
У меня есть структура данных дерево и реализована она в ГПИ, мне нужно сделать подсветку обхода.

Как изменить скорость
Как изменить скорость flash анимации если она в swf.

Как изменить скорость кулера
Кулер, в случае сильного нагревания, работает не на полную мощность, что мне сильно мешает.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *