Суббота, 09 Ноября 2024, 02:56

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Проблемы с проигрыванием анимации.
BarugooДата: Четверг, 02 Октября 2014, 13:26 | Сообщение # 1
частый гость
Сейчас нет на сайте
Добрый день! В общем, столкнулся с проблемой - в моей игре, при слайде по экрану, персонаж перемещается соответственно по уровню вправо-влево. Сейчас возникла необходимость добавить к этому самому перемещению еще и анимацию, но вот незадача - несмотря на код (см. ниже) вне зависимости от того, в какую сторону происходит слайд, проигрывается одна и та же анимация (т.е. проигрывается одна и та же анимация, когда для каждого направления слайда она должна быть разная). Проблема явно не в фрагменте слайда, т.к. само движение вправо-влево работает "на ура", косячит сама анимация. Можете подсказать, с чем это связанно, и как это возможно исправить?

Код
if (Alive && !Menu && Input.touchCount > 0 &&  
             Input.GetTouch(0).phase == TouchPhase.Moved) {
               var touchDeltaPosition:Vector2 = Input.GetTouch(0).deltaPosition;
                             {
                    if(touchDeltaPosition.x > 4){
                    
                    
                    transform.position += transform.right * SideSpeed * Time.deltaTime;
                    PlayerMesh.animation.Play("NaklonVpravo");
                    
                    
                    }
                    
                    
                    if(touchDeltaPosition.x < - 4)
                    
                    transform.position -= transform.right * SideSpeed * Time.deltaTime;
                    PlayerMesh.animation.Play("NaklonVlevo");  
                    
                    
                    
            
           
   }  
           
}

else
{
PlayerMesh.animation.Play("NonNaklon");
}
MANMANAДата: Четверг, 02 Октября 2014, 14:46 | Сообщение # 2
почти ветеран
Сейчас нет на сайте
ради теста
"NonNaklon" замени на "NaklonVlevo". а потом на "NaklonVpravo".
хочется знать, что будет происходить, когда пальцами не шебуршим.

ну и про размер вектора touchDeltaPosition : float = touch.deltaPosition.magnitude;//длина вектора
touchSpeed = touchDeltaPosition/Time.deltaTime;//это... так... на будущее. можешь использовать - чем быстрее елозишь пальцем, тем быстрее сдвигать персонажа smile


http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг
VKонтакте 3Dbuffer

Последнее:

Новый раздел "Текстуры"

Как запатентовать, защитить техническое решение, игру, идею
BarugooДата: Четверг, 02 Октября 2014, 14:57 | Сообщение # 3
частый гость
Сейчас нет на сайте
Цитата
ради теста
"NonNaklon" замени на "NaklonVlevo". а потом на "NaklonVpravo".
хочется знать, что будет происходить, когда пальцами не шебуршим.

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

Цитата
ну и про размер вектора touchDeltaPosition : float = touch.deltaPosition.magnitude;//длина вектора
touchSpeed = touchDeltaPosition/Time.deltaTime;//это... так... на будущее. можешь использовать - чем быстрее елозишь пальцем, тем быстрее сдвигать персонажа

Спасибо, но в моем случае это может внести немало дисбаланса=)


Сообщение отредактировал Barugoo - Четверг, 02 Октября 2014, 14:58
MANMANAДата: Четверг, 02 Октября 2014, 16:14 | Сообщение # 4
почти ветеран
Сейчас нет на сайте
удаленно саму анимацию просмотреть не получается, к сожалению
имя в скрипте NaklonVlevo - совпадает с названием анимации? naklonVlevo, NaaklonVlevo , NaklonWlevo, NaklonVleva
поскольку второй вариант рабочий - измени настройки анимации у первой анимации на настройки для второй smile
сама анимация справа в углу проигрывается?


http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг
VKонтакте 3Dbuffer

Последнее:

Новый раздел "Текстуры"

Как запатентовать, защитить техническое решение, игру, идею
BarugooДата: Четверг, 02 Октября 2014, 16:43 | Сообщение # 5
частый гость
Сейчас нет на сайте
Цитата
поскольку второй вариант рабочий

Первый тоже рабочий, просто проигрывается анимация, которая по-дефаулту уже стоит, если не трогать сенсор, поэтому никаких телодвижений и не происходит.
Анимация полностью рабочая, проблема в проигрывании, поэтому меня вводит в ступор. Попробую поискать по какому принципу избирается именно та анимация, которая проигрывается вне зависимости от направления слайда.
MANMANAДата: Четверг, 02 Октября 2014, 17:01 | Сообщение # 6
почти ветеран
Сейчас нет на сайте
скобки, блин!!!!!!!!!!!!!!!!

Добавлено (02.10.2014, 17:01)
---------------------------------------------
if(touchDeltaPosition.x < - 4)
!!!!!! {
transform.position -= transform.right * SideSpeed * Time.deltaTime;
PlayerMesh.animation.Play("NaklonVlevo");
!!!!!!!!!}


http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг
VKонтакте 3Dbuffer

Последнее:

Новый раздел "Текстуры"

Как запатентовать, защитить техническое решение, игру, идею
BarugooДата: Четверг, 02 Октября 2014, 17:14 | Сообщение # 7
частый гость
Сейчас нет на сайте
MANMANA, тьфу ты, точно же! Невнимательность - она такая) Спасибо большое)
allodsДата: Четверг, 02 Октября 2014, 23:14 | Сообщение # 8
почти ветеран
Сейчас нет на сайте
вот поэтому лучше

if(lololoolol)
{
your code of noob
}

чем

if(lololoolol){
your code of noob
}

^^
MANMANAДата: Четверг, 02 Октября 2014, 23:55 | Сообщение # 9
почти ветеран
Сейчас нет на сайте
именно поэтому и не заметил smile
сам выставляю в моно
{
}
хотя... это и так видно из #6 сообщения
да и у него
Цитата Barugoo ()
else
{
PlayerMesh.animation.Play("NonNaklon");
}

просто торопился, видать wink


http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг
VKонтакте 3Dbuffer

Последнее:

Новый раздел "Текстуры"

Как запатентовать, защитить техническое решение, игру, идею
  • Страница 1 из 1
  • 1
Поиск:

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