Пятница, 29 Марта 2024, 01:03

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » узнать когда обьект начал двигаться (воспроизвести анимацию)
узнать когда обьект начал двигаться
shustr1k76Дата: Понедельник, 29 Февраля 2016, 16:32 | Сообщение # 1
почетный гость
Сейчас нет на сайте
мужики подскажите кодом, как воспроизвести анимацию когда я начал двигаться и воспроизвести другую когда остановился?
я примерно понимаю, что нужно сравнивать позицию до и после, но как записать после так скажем в до и потом опять сравнивать?
если можно полный код, спасибо!
berilДата: Понедельник, 29 Февраля 2016, 17:16 | Сообщение # 2
Я не ленивый, я — энергосберегающий
Сейчас нет на сайте
Ну логичней, что написать в условие где ты двигаешь обьект написать animation.Play (смотря какую систему анимаций используешь).
Ты ведь как то двигаешь и останавливаешь обьект?




Накодил? Убери за собой!
Инвентарь в Unity(UI)
Инвентарь в Unity(GUI)
shustr1k76Дата: Понедельник, 29 Февраля 2016, 18:36 | Сообщение # 3
почетный гость
Сейчас нет на сайте
решил попробывать так, при нажатии на джойстик, начинает работать анимация движения, а как запустить анимацию спокойствия
Код
private Animation hia;
void Start () {
  hia = GetComponent<Animation>();
void Update () {

  if (moveJoy.IsPressed ()) {
   hia.AddClip (walk, "walk");
   hia.Play (walk.name);
  }
berilДата: Понедельник, 29 Февраля 2016, 19:59 | Сообщение # 4
Я не ленивый, я — энергосберегающий
Сейчас нет на сайте
Код
if (moveJoy.IsPressed ()) {
hia.AddClip (walk, "walk");
hia.Play (walk.name);
}
else
{
hia.Play (анимация спокойства);
}




Накодил? Убери за собой!
Инвентарь в Unity(UI)
Инвентарь в Unity(GUI)
shustr1k76Дата: Понедельник, 29 Февраля 2016, 20:02 | Сообщение # 5
почетный гость
Сейчас нет на сайте
уже додумался, хочу уточнить правильно это на самом деле
Код
void Start () {
  hia = GetComponent<Animation>();
  hia.AddClip (idel, "idel");
  hia.AddClip (walk, "walk");
void Update () {
  if (!moveJoy.IsPressed()){
  
  hia.Play (idel.name);
    }
  if (moveJoy.IsPressed ()) {

   hia.Play (walk.name);
  }

и другой вопрос, я добавлю к примеру кнопку и при нажатии на неё, будет воспроизводиться другая анимация, всё ли будет нормально или что то будет не так(когда я буду идти) воспроизводится?
спасибо + улетел
berilДата: Понедельник, 29 Февраля 2016, 20:17 | Сообщение # 6
Я не ленивый, я — энергосберегающий
Сейчас нет на сайте
Лишние строки кода, можно проще сделать
Код

if (moveJoy.IsPressed ()) {

   hia.Play (walk.name);
}
else if (нажатие на другу кнопку)
{
}
else
{
здесь анимация покоя
}

А вообще лучше Mecanim используй там больше возможностейдля контроля за анимациями и переходами




Накодил? Убери за собой!
Инвентарь в Unity(UI)
Инвентарь в Unity(GUI)
shustr1k76Дата: Понедельник, 29 Февраля 2016, 20:47 | Сообщение # 7
почетный гость
Сейчас нет на сайте
Цитата beril ()
А вообще лучше Mecanim используй там больше возможностейдля контроля за анимациями и переходами

глянул на офф. сайте, что это. как понял разница в том какой rig стоит(у меня легаси) нужно поменять дженерал), а можете Вы обьяснить поподробней что этои как работать с ним, если можно, то на моем примере?
и в предложенном Вами варианте, я из одного скрипта должен вызывать анимацию, в том числе определять нажата ли кнопка, а есть другой вариант(надежен ли он)?
berilДата: Понедельник, 29 Февраля 2016, 21:20 | Сообщение # 8
Я не ленивый, я — энергосберегающий
Сейчас нет на сайте
http://unity3d.com/ru/learn/tutorials/topics/animation тут в двух словах не обьяснить. biggrin
Так же можешь в ютубе посмотреть видео на русском от Валерия Беляева (seaman)




Накодил? Убери за собой!
Инвентарь в Unity(UI)
Инвентарь в Unity(GUI)
shustr1k76Дата: Вторник, 01 Марта 2016, 18:36 | Сообщение # 9
почетный гость
Сейчас нет на сайте
ок, спасибо посмотрю, есть вопрос - как реализовать удар =(рукой) по сопернику? к примеру я сделал кнопку по нажатию которой воспроизведется анимация и я ударил соперника - как понять сопернику что это именно удар(а не просто соприкосновение), и вычесть жизнь? если можно опишите поподробней? спасибо
и все таки еще вопрос)) как правильно использовать кнопку для анимации, у меня есть перс созданый в 3д максе, на нем находиться вся анимация - как мне при нажатии на кнопку воспроизвести анимацию удара?


Сообщение отредактировал shustr1k76 - Вторник, 01 Марта 2016, 19:33
MANMANAДата: Вторник, 01 Марта 2016, 21:18 | Сообщение # 10
почти ветеран
Сейчас нет на сайте
булевая удар;
если нажата кнопка удар, то удар истина;
//проверяем соприкосновение коллайдеров (или расстояние до врага и вектор направления)
если коллайдеры соприкоснулись и удар истина, то отнимаем жизнь;

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


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

Последнее:

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

Как запатентовать, защитить техническое решение, игру, идею
shustr1k76Дата: Воскресенье, 06 Марта 2016, 17:58 | Сообщение # 11
почетный гость
Сейчас нет на сайте
логика понятна, но как же, сделать правильно кнопку, где её разместить, как при нажатии на неё ссылаться на анимацию, готов подкинуть аванс, если кто поможет со всеми моими вопросами косаемые кнопки, скайп shustr1k761.
а как воспризвести две анимации одновременно, к примеру хотьба и удар?

Добавлено (06 марта 2016, 17:58)
---------------------------------------------
подскажите как сделать рандом анимаций? если можно код, спасибо

Сообщение отредактировал shustr1k76 - Среда, 02 Марта 2016, 16:16
ЭргалонДата: Понедельник, 07 Марта 2016, 17:56 | Сообщение # 12
Вездесущий
Сейчас нет на сайте
shustr1k76, Ты просишь написать за тебя игру, так у тебя ничего не получится. Учи c#, а не проси чтобы за тебя сделали всё что ты пожелаешь. Одним "можно код", "а код прицепите" не отделаешься, учитывая что ты задаешь один и тот же вопрос(в другой формулировке), на который тебе дали ответ.

Кубариум
Rise of the dark lords
shustr1k76Дата: Понедельник, 07 Марта 2016, 18:26 | Сообщение # 13
почетный гость
Сейчас нет на сайте
но почему всегда сразу - я прошу за меня сделать игру? я уже обманул обстоятельства, по поводу кнопки, да и с анимацией, воспроизведение двух сразу - тоже разобрался, просто есть действительно сложные моменты, за которыми люди и приходят на форум, а им тут, иди учи и тд, человек бы не задавал каких то вопросов, если бы у него не было результата, я ведь прав! ну и конечно людям решать стоит ему помогать полностью или ткнуть носон иди учи, или читай ссылку - и ведь в последних двух, тоже не просто. а Вы всемогущие гуру мог ли бы показать как правильно, для чего это, как работает и тд... так человеку проще, может быть он уже насмотрелся, начитался(ведь не во всех виедо и мануал описано подробно), но пременить не совсем получается
да и зачем Вы тогда находитесь на форумах? - ответьте


Сообщение отредактировал shustr1k76 - Понедельник, 07 Марта 2016, 18:32
ЭргалонДата: Понедельник, 07 Марта 2016, 18:47 | Сообщение # 14
Вездесущий
Сейчас нет на сайте
shustr1k76, Я не гуру, но если бы человек действительно стремился чему-то научиться, то брался бы в первую очередь за изучение синтаксиса и основ. Какой смысл помогать человеку, который только и делает, что просит код приложенный к ответу? Вот если бы ты написал свой код изначально, выложил бы его и по нему задавал вопрос - это уже другое дело. Если ты не можешь справиться с элементарными вещами, какой смысл браться за что-то сложнее?
Цитата
человек бы не задавал каких то вопросов, если бы у него не было результата, я ведь прав!

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


Кубариум
Rise of the dark lords
ShortKedrДата: Понедельник, 07 Марта 2016, 19:23 | Сообщение # 15
Renword Studio
Сейчас нет на сайте
Цитата shustr1k76 ()
но почему всегда сразу - я прошу за меня сделать игру? я уже обманул обстоятельства, по поводу кнопки, да и с анимацией, воспроизведение двух сразу - тоже разобрался, просто есть действительно сложные моменты, за которыми люди и приходят на форум, а им тут, иди учи и тд, человек бы не задавал каких то вопросов, если бы у него не было результата, я ведь прав! ну и конечно людям решать стоит ему помогать полностью или ткнуть носон иди учи, или читай ссылку - и ведь в последних двух, тоже не просто. а Вы всемогущие гуру мог ли бы показать как правильно, для чего это, как работает и тд... так человеку проще, может быть он уже насмотрелся, начитался(ведь не во всех виедо и мануал описано подробно), но пременить не совсем получается
да и зачем Вы тогда находитесь на форумах? - ответьте


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

Цитата shustr1k76 ()
логика понятна, но как же, сделать правильно кнопку, где её разместить, как при нажатии на неё ссылаться на анимацию, готов подкинуть аванс, если кто поможет со всеми моими вопросами косаемые кнопки, скайп shustr1k761.


Всё познаётся практикой - это раз. Два - если бы ты изучал C# то знал бы, как на неё ссылаться. Тебе, собственно, это и посоветовали.
Задавать такой вопрос немного глупо, потому-что начинаются просто философские раздумия - нет действия. Можно так очень долго сидеть и размышлять о том, чего не знаешь, а можно пойти и попытаться это сделать самому. Тем более тебе уже всё объяснили.

Страх всегда возникает от неизвестности, поэтому её нужно убрать - побороть свой страх. Иди делай, а не философствуй)


Сообщение отредактировал ShortKedr - Понедельник, 07 Марта 2016, 19:24
shustr1k76Дата: Понедельник, 07 Марта 2016, 20:49 | Сообщение # 16
почетный гость
Сейчас нет на сайте
дак я стараюсь, и что то делаю, а не прихожу сюда и говорю сделайте за меня, я лишь прошу подсказки(да может быть код почему бы и нет), результат то есть.
зачем Вы тогда здесь нужны, если считаете что я прошу Вас что то сделать, что б Вы меня послали по ссылкам и тд, я ведь по ним хожу))) и если ни чего не выходит, прихожу сюдаю.
ну и ладно, разве сложно помочь, что я у Вас отнимаю, разве только что время - и то которое Вы и так проводите здесь
EgoorДата: Понедельник, 07 Марта 2016, 21:16 | Сообщение # 17
участник
Сейчас нет на сайте
shustr1k76, Таких как ты - сотни, люди должны за каждого из вас игры делать? На форум нужно лезть только в крайнем случае. Я вообще не понимаю какая с Unity сложность может быть, уроков тысячи, даже школьники свои туторы пилят. Ладно, когда экзотика какая-то в вопросе, а тут... любое видео открываешь на Ютубе и смотришь. Я начинал вообще с крестиков-ноликов, саперов и подобных игр, параллельно познавая тот или иной движок.
seamanДата: Понедельник, 07 Марта 2016, 21:23 | Сообщение # 18
старожил
Сейчас нет на сайте
Ну ладно. Успокойтесь. Давно уже пора привыкнуть к тому, что из-за того, что у Юнити очень низкий порог вхождения - очень много появляется людей, которые не зная основ пытаются сделать игру.
Данный человек, если судить по другому треду - хоть что-то понимает. Часто бывает гораздо хуже.
Конечно было бы очень здорово, если бы все кто начинает писать игру сначала выучили программирование. Но ведь этого никогда не будет.
PS: для топикастера. Чтобы люди не агрились - всегда пиши свой код. Вот мол пробовал так - лажа. Ошибки такие. Или работает не так, как хочется. Хочется так - получил эдак. Когда люди видят, что ты хоть что-то пытался сделать сам - они помогают гораздо активнее.
ShortKedrДата: Понедельник, 07 Марта 2016, 22:27 | Сообщение # 19
Renword Studio
Сейчас нет на сайте
Цитата shustr1k76 ()
зачем Вы тогда здесь нужны, если считаете что я прошу Вас что то сделать, что б Вы меня послали по ссылкам и тд, я ведь по ним хожу)))

Мы не здесь и мы никому не нужны, понимаешь))) Мы пришли сюда, что бы пообщаться с таким же людьми, как мы - поделиться опытом))) Мы не целый день тут сидим, нужно и отдыхать, работать)

Цитата Egoor ()
На форум нужно лезть только в крайнем случае.

Правильное замечание!) С первого раза может не получится, со второго тоже, но нужно пытаться, придумывать другие пути и т.д. После первого косяка не нужно сразу сюда идти) Ладно, если бы была безысходность какая-нибудь - в гугле ничего не нашёл, в яндексе тоже и т.д. Но этого же везде полно и вопрос неоднократно поднимался, на первой страничке гугла можно найти то, что нужно) Даже для полной безысходности Unity Technologies предусмотрели документацию, в которой всё есть, даже большая часть заурядной экзотики)

Цитата seaman ()
PS: для топикастера. Чтобы люди не агрились - всегда пиши свой код. Вот мол пробовал так - лажа. Ошибки такие. Или работает не так, как хочется. Хочется так - получил эдак.

Да, мы видим, просто видим, что человек просит нас написать код для него, для того, что бы он добавил его в свою игру. Не хотим помогать, потому что понимаем, что это всё равно не пригодится человеку - он в очередной раз, лучше попытается найти человека, который за него всё сделает, вместо того, чтобы начать учиться самому. Я такое не раз видел и мне это не нравится, да и никому не нравится)

Добавлено (07 марта 2016, 22:27)
---------------------------------------------
P.S. Не злись ни на кого) Это всё написано не просто так) Людям хочется отделять людей. Людей, которым действительно помогут их советы от тех, кто просто пропустит всё мимо ушей. А для этого нужно видеть, что человек старается и хочет продвигаться дальше, познавать и внимать новое) А этого у тебя мы пока не увидели)


Сообщение отредактировал ShortKedr - Понедельник, 07 Марта 2016, 22:28
EgoorДата: Понедельник, 07 Марта 2016, 23:11 | Сообщение # 20
участник
Сейчас нет на сайте
Странные вещи происходят.. Мои сообщения сами редактируются, из них убирается накипевший негатив и фекалии, а еще под мою дверь кто-то подбросил книгу "Как познать себя". Звоню охотникам за приведениями.
P.S. Мата в сообщении не было, только жизненные советы и наставления. Правила не нарушал. Зачем было удалять половину поста? Свобода слова, не?

В стиле:
Твоя игра - фигня
*Отредактировано модератором
Твоя игра очень необычна!


Сообщение отредактировал Egoor - Понедельник, 07 Марта 2016, 23:14
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » узнать когда обьект начал двигаться (воспроизвести анимацию)
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

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