Анимация не проигруеться

Программирование на Юнити.

Анимация не проигруеться

Сообщение HacKeR 13 мар 2011, 19:29

Есть на префабе ThirdPersonController. Делаю скрипт, в нутри скрипта есть animation.Play ("name"); Анимация проигрывается но после этого оно не возвращает на idle или walk. Что дописать, что аним дальше возпроизводились?
HacKeR
UNIверсал
 
Сообщения: 360
Зарегистрирован: 12 ноя 2010, 21:14

Re: Анимация не проигруеться

Сообщение HacKeR 13 мар 2011, 20:41

на Reference ничего не нашел:( Всё перепробовал, никакого результата....
HacKeR
UNIверсал
 
Сообщения: 360
Зарегистрирован: 12 ноя 2010, 21:14

Re: Анимация не проигруеться

Сообщение WhiteDevil 13 мар 2011, 20:51

if (!animation.isPlaying) {
animation.Play("idle");
}
Аватара пользователя
WhiteDevil
UNIверсал
 
Сообщения: 455
Зарегистрирован: 19 дек 2010, 15:55

Re: Анимация не проигруеться

Сообщение HacKeR 13 мар 2011, 20:59

тогда будет проигрываться та анимация которая будет в этом блоке. Но если проигрывается эта idle то уже walk, run, jump не работают а проигрывается всегда idle
HacKeR
UNIверсал
 
Сообщения: 360
Зарегистрирован: 12 ноя 2010, 21:14

Re: Анимация не проигруеться

Сообщение WhiteDevil 13 мар 2011, 21:02

ты предикат "!animation.isPlaying" понимаешь?:) Если на человеческий то будет чтото вроде "Если не проигрывается какая-либо анимация, то..."
Команда animation.Play не выполнится, если анимация уже проигрывается

ПС: можешь еще очереди задавать - смотри в рефе "Animation.PlayQueued "
Аватара пользователя
WhiteDevil
UNIверсал
 
Сообщения: 455
Зарегистрирован: 19 дек 2010, 15:55

Re: Анимация не проигруеться

Сообщение HacKeR 13 мар 2011, 21:19

WhiteDevil писал(а):ты предикат "!animation.isPlaying" понимаешь?:) Если на человеческий то будет чтото вроде "Если не проигрывается какая-либо анимация, то..."
Команда animation.Play не выполнится, если анимация уже проигрывается

ПС: можешь еще очереди задавать - смотри в рефе "Animation.PlayQueued "

нет. после проигрывания анимации она останавливается и другие уже не включаются...
HacKeR
UNIверсал
 
Сообщения: 360
Зарегистрирован: 12 ноя 2010, 21:14

Re: Анимация не проигруеться

Сообщение seaman 13 мар 2011, 21:51

и другие уже не включаются...

А как ты их включаешь - другие анимации?
seaman
Адепт
 
Сообщения: 8352
Зарегистрирован: 24 янв 2011, 12:32
Откуда: Самара

Re: Анимация не проигруеться

Сообщение HacKeR 13 мар 2011, 21:59

в ThirdPersonController должно сам вызывать анимацию....
HacKeR
UNIверсал
 
Сообщения: 360
Зарегистрирован: 12 ноя 2010, 21:14

Re: Анимация не проигруеться

Сообщение Golandez 13 мар 2011, 23:26

Оно никому ничего не должно.
Ты нужен только тогда,когда нужен.(С)
Сказать спасибо
Аватара пользователя
Golandez
Пилигрим
 
Сообщения: 1637
Зарегистрирован: 06 авг 2009, 13:55
Откуда: Харьков
Skype: lestardigital

Re: Анимация не проигруеться

Сообщение HacKeR 13 мар 2011, 23:36

Golandez писал(а):Оно никому ничего не должно.

ну как бэ оно при нажатии на WASD вызывает анимацию которые я выставил
HacKeR
UNIверсал
 
Сообщения: 360
Зарегистрирован: 12 ноя 2010, 21:14

Re: Анимация не проигруеться

Сообщение Левш@ 13 мар 2011, 23:41

Используй другие методы, вот пример:

Синтаксис:
Используется javascript
var animIdle : AnimationClip;
var animRun : AnimationClip;
var animAtack : AnimationClip;
var animDeath : AnimationClip;

function Stop ()  {
                animation.clip = animIdle;
                animation.Play();
                            yield WaitForSeconds(animation.clip.length);
                            animation.clip = animRun;
                            animation.Play()
                            // и т.д!
}
_X.cor.R (Prologue)
Аватара пользователя
Левш@
Адепт
 
Сообщения: 4073
Зарегистрирован: 14 окт 2009, 16:34
Откуда: IBERIA
Skype: bars_levsha
  • Сайт

Re: Анимация не проигруеться

Сообщение seaman 14 мар 2011, 07:49

в ThirdPersonController должно сам вызывать анимацию....
ну как бэ оно при нажатии на WASD вызывает анимацию которые я выставил

Если оно что-то должно - зачем ты ему мешаешь - запускаешь насильно свою анимацию.
"как бэ" там внутри стейтовая машина, работу которой ты сбил. Если уж так сильно хочется - напиши обертку для ThirdPersonController, в которой просто переключай состояния (_characterState) извне по командам. Тогда можно будет извне запускать одну из анимаций, которые ты в нем указал... Во всяком случае можно попробовать.
seaman
Адепт
 
Сообщения: 8352
Зарегистрирован: 24 янв 2011, 12:32
Откуда: Самара


Вернуться в Скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 10