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

Как поставить анимацию на паузу unity

  • автор:

Сочетания клавиш Unity

Это обзор горячих клавиш Unity, установленных по умолчанию. Вы также можете скачать таблицу в формате PDF для Windows и MacOSX. Если сочетание клавиш содержит CTRL/CMD, это означает, что нужно использовать клавишу Control на Windows или клавишу Command на MacOSX.

Tools
“Горячая” клавиша Действие
Q Pan (перемещение камеры сцены)
W Move (перемещение)
E Rotate (вращение)
R Scale (масштабирование)
T Rect Tool
Z Pivot Mode toggle (переключение Pivot-режима)
X Pivot Rotation Toggle (переключение поворота пивота)
V Vertex Snap (привязка вершин)
CTRL/CMD+ЛКМ Snap (привязка)
GameObject
CTRL/CMD+SHIFT+N Создать новый игровой объект
ALT+SHIFT+N New empty child to selected game object
CTRL/CMD+ALT+F Переместить объект к точке вида
CTRL/CMD+SHIFT+F Выровнить по виду
SHIFT+F или двойное F Привязывает камеру окна Scene View к выбранному игровому объекту
Window (окно)
CTRL/CMD+1 Scene (сцена)
CTRL/CMD+2 Game (игра)
CTRL/CMD+3 Inspector (инспектор)
CTRL/CMD+4 Hierarchy (иерархия)
CTRL/CMD+5 Project (проект)
CTRL/CMD+6 Animation (анимация)
CTRL/CMD+7 Profiler (профайлер)
CTRL/CMD+9 Магазин ассетов
CTRL/CMD+0 Version Control
CTRL/CMD+SHIFT+C Console (консоль)
Edit
CTRL/CMD+Z Отменить
CTRL+Y (только на Windows) Повторить
CMD+SHIFT+Z (только на Mac) Повторить
CTRL/CMD+X Вырезать
CTRL/CMD+C Копировать
CTRL/CMD+V Вставить
CTRL/CMD+D Дублировать
SHIFT+Del Удалить
F Центрировать камеру сцены на объекте
CTRL/CMD+F Найти
CTRL/CMD+A Выбрать все
CTRL/CMD+P Играть
CTRL/CMD+SHIFT+P Пауза
CTRL/CMD+ALT+P Шаг
Selection (выделение)
CTRL/CMD+SHIFT+1 Загрузить выделение 1
CTRL/CMD+SHIFT+2 Загрузить выделение 2
CTRL/CMD+SHIFT+3 Загрузить выделение 3
CTRL/CMD+SHIFT+4 Загрузить выделение 4
CTRL/CMD+SHIFT+5 Загрузить выделение 5
CTRL/CMD+SHIFT+6 Загрузить выделение 6
CTRL/CMD+SHIFT+7 Загрузить выделение 7
CTRL/CMD+SHIFT+8 Загрузить выделение 8
CTRL/CMD+SHIFT+9 Загрузить выделение 9
CTRL/CMD+ALT+1 Сохранить выделение 1
CTRL/CMD+ALT+2 Сохранить выделение 2
CTRL/CMD+ALT+3 Сохранить выделение 3
CTRL/CMD+ALT+4 Сохранить выделение 4
CTRL/CMD+ALT+5 Сохранить выделение 5
CTRL/CMD+ALT+6 Сохранить выделение 6
CTRL/CMD+ALT+7 Сохранить выделение 7
CTRL/CMD+ALT+8 Сохранить выделение 8
CTRL/CMD+ALT+9 Сохранить выделение 9
Assets (ассеты)
CTRL/CMD+R Обновить

Customizing Your Workspace (Настройка рабочего пространства)

Сделать паузу с анимацией

Как сделать паузу на 5 секунд, чтоб открывалось окно с анимацией (она как раз таки длится 5 секунд), после чего окно закрывалось и пауза снималась?

using System.Collections; using System.Collections.Generic; using UnityEngine; public class Logist : MonoBehaviour < public Syn[] BallGenerationsPrefabs; public GameObject pause; private void OnEnable() =>Syn.BallsCollided += OnBallsHit; private void OnDisable() => Syn.BallsCollided -= OnBallsHit; private void OnBallsHit(Syn ballA, Syn ballB) < if (ballA.GenerationId == ballB.GenerationId) < Vector3 middlePosAB = Vector3.Lerp(ballA.transform.position, ballB.transform.position, 0.5f); int nextGenerationId = ballA.GenerationId + 1; Instantiate(BallGenerationsPrefabs[nextGenerationId], middlePosAB, Quaternion.identity); ScoreScript.gems += nextGenerationId; if (nextGenerationId == 9) < DiamondScript.gems += 1; //Здесь нужно чтоб игра встала на 5 секунд с анимацией и GameObject(pause) включился. На нем и висит анимация. //пока я здесь прописал просто паузу и включение объекта. pause.SetActive(true); Time.timeScale = 0; >ballA.DestroySelf(); ballB.DestroySelf(); > > >

Может это сделать отдельным скриптом и перенаправлять с этого туда?
Или как-то еще, подскажите пожалуйста

#1
15:50, 12 июля 2022

Странно, откуда берутся люди, которые знают про делегаты, но не знают про корутины или апдейты =\

#2
15:56, 12 июля 2022

Неуместно умничаешь. Т.к. есть форумы, а я этим занимаюсь меньше месяца.

  • A_Kuzmin
  • Пользователь

#3
17:13, 12 июля 2022

QuickQuest
> Как сделать паузу на 5 секунд, чтоб открывалось окно с анимацией (она как раз
> таки длится 5 секунд), после чего окно закрывалось и пауза снималась?

Привязать то что должно двигаться и обновляться во время паузы к параметру Time.unscaledTime.
запускать корутину, которая через unscaledtime отсчитывает 5 секунд и после этого удаляет всплывающее окно.

если в паузе проигрывается например персонажная анимация, то в аниматоре можно выставить для update mode опцию unscaled time.

#4
17:36, 12 июля 2022

A_Kuzmin
Спасибо БОЛЬШОЕ!

Русские Блоги

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

Прежде всего,Используется в старой версии Аниматора с анимацией: скорость = 1 (вперед), скорость = -1 (назад), скорость = 0 (стоп).

Примечание: теперь настройка скорости недействительна

Посмотрите на код:

using System.Collections; using System.Collections.Generic; using UnityEngine; public class AnimController : MonoBehaviour < public Animator ani; private void Start() < ani.speed = 0; >/// /// Скорость прямой трансляции 1 /// public void OnClickForward() < //ani.speed = 2; Скорость движения вперед равна 2 ani.speed = 1; >/// /// тайм-аут /// public void OnClickPause() < ani.speed = 0; >/// /// Скорость перемотки 1 /// public void OnClickBack() < ani.speed = -1; >> 

затем,Посмотрите на текущую практику:

Добавьте переменную с плавающей точкой к параметрам аниматора, а затем назначьте эту переменную анимационному клипу, который необходимо воспроизвести.

Посмотрите на код:

using System.Collections; using System.Collections.Generic; using UnityEngine; public class AnimController : MonoBehaviour < public Animator ani; private void Start() < ani.SetFloat("speed", 0); >/// /// Скорость прямой трансляции 1 /// public void OnClickForward() < ani.SetFloat("speed", 1.0f); >/// /// тайм-аут /// public void OnClickPause() < ani.SetFloat("speed", 0); >/// /// Скорость перемотки 1 /// public void OnClickBack() < // Скорость перемотки 1 //ani.SetFloat("speed ", -5.0f); Скорость обратного воспроизведения 5 ani.SetFloat("speed", -1.0f); >> 

Методы работы с временем.пауза анимации или замедление времени

Author24 — интернет-сервис помощи студентам

Ребята , вот например нужно мне швырнуть в противника морозцом нарпример ,он потом должен замерзнуть. то есть застыть. как можно поставить анимацию на паузу ? в аниматоре можно манипулировать скоростью воспроизведения. но как быть с просчетом физики или тогда ,когда не задействована анимация как таковая. допустим падает тело ,ударяется об что-то. как замедлить или обнулить время у этого объекта или нескольких ,когда остальная игра идет в своем обычном времени. есть кое какие задумки на счет оригинального оружия .

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

Замедление работы время от времени на нескольких ПК
Некоторые компьютеры стали медленно работать. Примерно общее: Долгое включение с утра час или даже.

Реализация течения времени. Виртуальное время. Замедление и ускорение относительно реального времени.
Опишите, пожалуйста, подробнее как реализовать течение времени в программе. То есть, на главном.

Вычислить промежуток времени между текущей датой/временем и временем, введенным пользователем
Создайте новое приложение. Пакет приложения назовите com.ВАШЕ_ИМьЯ.time_span. Функционал.

Пауза анимации
Ситуация такова, моя программа выводит в pictureBox последовательность картинок, которые в.

136 / 131 / 43
Регистрация: 07.11.2017
Сообщений: 553

ЦитатаСообщение от Gammister Посмотреть сообщение

в аниматоре можно манипулировать скоростью воспроизведения

если вы можете манипулировать скоростью воспроизведения анимацией, то кто вам мешает поставить скорость в «0» ?

ЦитатаСообщение от Gammister Посмотреть сообщение

когда не задействована анимация как таковая

в любом состоянии есть анимация!
даже в состоянии Idle это анимация для состояния Idle

если же у вас используется кроме аниматора еще и воздействие на обьект другими силами, то перестаньте временно ними воздействовать на данный обьект.

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

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