Пятница, 19 Апреля 2024, 16:08

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Legacy анимация
Legacy анимация
AlastarДата: Вторник, 25 Июня 2013, 18:06 | Сообщение # 1
постоянный участник
Сейчас нет на сайте
Такая проблема, на объекте есть две анимации, один скрипт вызывает анимацию "А", второй вызывает анимацию "Б", после того, как второй скрипт проиграет анимацию "Б"
Код
   meeleeWeapon.animation[a_m_swing_anim.name].speed = a_m_speed;

       transformMeeleeWeapon.animation.CrossFade(a_m_swing_anim.name);
       yield WaitForSeconds (transformMeeleeWeapon.animation.clip.length);
       transformMeeleeWeapon.animation.Stop();

То анимация "А" не работает
Код
thisGameObject.animation.CrossFadeQueued(a_anim.name);
yield WaitForSeconds (thisGameObject.animation.clip.length);
thisGameObject.animation.Stop();

Да и вообще, как то у меня туго с анимацией, то она прервется на середине(и нож застревает где нибудь в голове bag ) то еще что-нибудь. Есть ли где нибудь нормальный мануал по Legacy анимации, в котором все углубленно рассматривается?


Big Boobs (+18 only!)
seamanДата: Вторник, 25 Июня 2013, 21:18 | Сообщение # 2
старожил
Сейчас нет на сайте
Зачем вообще вызывать Stop? Если анимация не зациклена она просто сама остановится.
Далее. Если анимация остановлена (или сама закончилась) - не надо вызывать CrossFadeQueued. Ну логично то подумайте - в какую очередь ставить, если ни одна анимация не проигрывается?
AlastarДата: Вторник, 25 Июня 2013, 21:36 | Сообщение # 3
постоянный участник
Сейчас нет на сайте
Цитата (seaman)
Зачем вообще вызывать Stop? Если анимация не зациклена она просто сама остановится.
Далее. Если анимация остановлена (или сама закончилась) - не надо вызывать CrossFadeQueued. Ну логично то подумайте - в какую очередь ставить, если ни одна анимация не проигрывается?

Всмысле зациклена? То-есть, после анимации объект возвращается на исходное положение? У меня в анимации "А" так и есть - это анимация удара. CrossFadeQueued осталось еще с того времени, как я задолбался биться над этой проблемой biggrin
Я с анимацией вообще не дружу, так, посмотрел один ролик на ЮТ, вроде понял, а оно оказывается, не совсем)


Big Boobs (+18 only!)

Сообщение отредактировал Alastar - Вторник, 25 Июня 2013, 21:40
White9Дата: Вторник, 25 Июня 2013, 21:58 | Сообщение # 4
заслуженный участник
Сейчас нет на сайте
seaman, я немного не в теме - CrossFadeQueued нужен для плавной остановки/смены анимации? )
Alastar, если ты, например, вызываешь анимацию один раз и в её настройках не стоит 'loop', то она не зациклена и после выполнения не возвращает объект к состоянию до проигрывания анимации, а придаёт ему положение своего последнего кадра - как-то так )
AlastarДата: Вторник, 25 Июня 2013, 22:18 | Сообщение # 5
постоянный участник
Сейчас нет на сайте
Цитата (White9)
Alastar, если ты, например, вызываешь анимацию один раз и в её настройках не стоит 'loop', то она не зациклена и после выполнения не возвращает объект к состоянию до проигрывания анимации, а придаёт ему положение своего последнего кадра - как-то так )

То-есть, для анимации удара мне надо сделать анимацию зацикленной. Хорошо, сегодня-завтра проверю все и отпишу, сейчас мультиплеером занят.


Big Boobs (+18 only!)
seamanДата: Вторник, 25 Июня 2013, 22:36 | Сообщение # 6
старожил
Сейчас нет на сайте
Цитата
То-есть, для анимации удара мне надо сделать анимацию зацикленной.

Наоборот.
CrossFadeQueued - для постановки анимации в очередь. Анимация, которую ставишь в очередь запустится после того как закончит проигрываться текущая. В мануале об этом хорошо написано.
AlastarДата: Вторник, 25 Июня 2013, 22:42 | Сообщение # 7
постоянный участник
Сейчас нет на сайте
Цитата (seaman)
Наоборот.

Но тогда при резком повороте оружие может зависнуть не на том месте. У меня ж анимация на самом оружии, а не на гг. Гг у меня вообще шар - там анимировать нечего biggrin


Big Boobs (+18 only!)
White9Дата: Вторник, 25 Июня 2013, 22:54 | Сообщение # 8
заслуженный участник
Сейчас нет на сайте
seaman, спасибо ) Эх, а я раньше делал условия с animation.isPlaying. Оказывается, можно делать чуть проще )

Сообщение отредактировал White9 - Вторник, 25 Июня 2013, 22:56
AlastarДата: Среда, 26 Июня 2013, 12:33 | Сообщение # 9
постоянный участник
Сейчас нет на сайте
Всем спасибо за то, что разъяснили! Работает теперь прекрасно (но иногда нож у гг перед лицом останавливается smile )

Big Boobs (+18 only!)
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Legacy анимация
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг