Помощь с анимациями
| |
seaman | Дата: Среда, 09 Марта 2016, 07:58 | Сообщение # 21 |
старожил
Сейчас нет на сайте
| Зачем два раза подряд параметр то устанавливать? Вообще - если не можете понять логики попробуйте просто написать словами программу. Ваша "программа". 1. Если нажата кнопка "rotateJoy" а) Получаем случайное число в нужном диапазоне (0-2). б) Устанавливаем параметр Меканим в это случайное число. При этом что происходит? Меканим получая это число производит блендинг к анимации соответствующей данному числу threshold. Разве не этого Вы хотели? Случайным образом выбрать нужную анимацию.
|
|
| |
shustr1k76 | Дата: Среда, 09 Марта 2016, 15:26 | Сообщение # 22 |
почетный гость
Сейчас нет на сайте
| получается я сделал правильно?) за основу взял дефолтную анимацию idel из него сделал дерево - туда добавил две анимации, и на переходах к каждой задал "blend" и определенное число в threshold, тем самым сделал их разными - правильно получается? и всего одна строчка anim.SetInteger("blend", n); оказалась нужной
|
|
| |
seaman | Дата: Среда, 09 Марта 2016, 17:29 | Сообщение # 23 |
старожил
Сейчас нет на сайте
| Ну в итоге правильно
|
|
| |
shustr1k76 | Дата: Пятница, 11 Марта 2016, 18:27 | Сообщение # 24 |
почетный гость
Сейчас нет на сайте
| такой вопрос, как правильно сделать анимацию прыжка? я сделал анимацию прыжка на месте(3д макс), т.е персонаж не подпрыгивает а так скажем делает вид что прыгнит. в юнити я делаю прыжок, но анимация воспроизводится поздно и как то не правильно - в обшем коряво получается)). в одном из уроков от ув. seaman я слышал что можно двигать персонажа анимацией(там было хотьбу), так вот, как же правильно сделать прыжок и его анимацию?
|
|
| |
MANMANA | Дата: Пятница, 11 Марта 2016, 22:32 | Сообщение # 25 |
почти ветеран
Сейчас нет на сайте
| Цитата shustr1k76 ( ) я слышал что можно двигать персонажа анимацией(там было хотьбу), так вот, как же правильно сделать прыжок и его анимацию? записать анимацию движка не на месте, а со смещением, т.е. старт прыжка в точке x1, конец анимации в точке х2. Далее все дело в волшебных флажках bake into pose для Rotation и Positions
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
|
|
| |
seaman | Дата: Суббота, 12 Марта 2016, 00:12 | Сообщение # 26 |
старожил
Сейчас нет на сайте
| Можно и на месте анимировать. В момент прыжка просто толкнуть силой (физикой) вверх.
|
|
| |
ShortKedr | Дата: Суббота, 12 Марта 2016, 00:37 | Сообщение # 27 |
Renword Studio
Сейчас нет на сайте
| Цитата shustr1k76 ( ) я слышал что можно двигать персонажа анимацией(там было хотьбу), так вот, как же правильно сделать прыжок и его анимацию?
Есть два варианта:- Анимация на месте. То есть передвигать будешь ты, а в анимации нет передвижения
- Анимация с передвижение объекта. То есть нужно самому перемещать объект в нужную точку после окончания анимации. Конечно это всё есть в Mecanim, но иногда может криво работать(например анимация кривая через-чур). В этом случае лучше самому делать
Сообщение отредактировал ShortKedr - Суббота, 12 Марта 2016, 00:37 |
|
| |
shustr1k76 | Дата: Вторник, 22 Марта 2016, 01:48 | Сообщение # 28 |
почетный гость
Сейчас нет на сайте
| такой вопрос, допустим я игроком подошел к предмету(мяч), как правильно его поднять? Точней где записывать анимацию в юнити? но у меня же есть контроллер настроеный для хотьбы и тд. если я пытаюсь по средством юнити делать анимацию, то мне приходится его отключать и создовать новый, как в обще сделать взаимодействие двух предметов - т.е я подошел своим контроллером, а потом хочу поднять мяч и кинуть. подскажите как сделать по уму в общем!)
Сообщение отредактировал shustr1k76 - Вторник, 22 Марта 2016, 01:55 |
|
| |
MANMANA | Дата: Вторник, 22 Марта 2016, 15:55 | Сообщение # 29 |
почти ветеран
Сейчас нет на сайте
| Inverse Kinematics
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
|
|
| |
shustr1k76 | Дата: Понедельник, 28 Марта 2016, 15:45 | Сообщение # 30 |
почетный гость
Сейчас нет на сайте
| спасибо
Добавлено (28 марта 2016, 15:45) --------------------------------------------- такой вопрос, сделал анимацию в 3з максе, чтоб подобрать предмет. проблема в том, что игрок наклоняется к предмету и в это время использую ik http://gcup.ru/publ/gamedev/unity_inversnaja_kinematika_pro_versija/1-1-0-519 руки должны тянутся, к предмету. Но этого не происходит, получается что игрок наклоняется руки не тянутся, а во время анимации нет, пробывал делать маску освобождая руки.
p.s облегчил себе задачу), но теперь другой вопрос. Имеется объект, на нем свой аниматор контроллер(анимации) и скрипт, как из другого скрипта запустить анимацию? пробывал, передачей bool скрипт воспроизведения анимации
Код void Update if (goal) { shta.SetBool("proc", true); } передаю так
Код shtangafor sh; void start(){ sh = GetComponent<shtangafor> ();} void Update { sh.goal = true; }
выдает ошибку NullReferenceException: Object reference not set to an instance of an object NewBehaviourScript.Update () (at Assets/animations/NewBehaviourScript.cs:62) типо не существует объект, как так?
Сообщение отредактировал shustr1k76 - Понедельник, 28 Марта 2016, 21:23 |
|
| |
MANMANA | Дата: Вторник, 29 Марта 2016, 02:04 | Сообщение # 31 |
почти ветеран
Сейчас нет на сайте
| мммм... Overview: Accessing Other Game Objects ?
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
|
|
| |
shustr1k76 | Дата: Вторник, 29 Марта 2016, 09:54 | Сообщение # 32 |
почетный гость
Сейчас нет на сайте
| хм.. теперь так, стал искать по тегу, получать компонент игрока, т.е скрипт, в скрипте указываю на аниматор(shtanga1 = getcomponent<animator) ну и воспроизводить. Ошибка про нее почитал, предложили решение с тэгом, в общем тоже самое Cannot implicitly convert type `shtangafor' to `UnityEngine.GameObject'
Код public GameObject ta;
ta = GameObject.FindGameObjectWithTag ("target").GetComponent<shtangafor> ().shtanga1.SetBool("for", true);
|
|
| |
seaman | Дата: Вторник, 29 Марта 2016, 11:16 | Сообщение # 33 |
старожил
Сейчас нет на сайте
| Совет. Прочитайте хотя бы одну книжку "для чайников по программированию". Уверяю Вас - методом тыка программированию не научитесь. Будете продолжать задавать глупые вопросы.
|
|
| |
shustr1k76 | Дата: Вторник, 29 Марта 2016, 19:25 | Сообщение # 34 |
почетный гость
Сейчас нет на сайте
| я читаю книгу про с#. вроде по логике все правильно - нахожу объект, получаю компонент(скрипт) и далее выполняю что нужно? что не так?
|
|
| |
ShortKedr | Дата: Вторник, 29 Марта 2016, 19:34 | Сообщение # 35 |
Renword Studio
Сейчас нет на сайте
| Конечно не правильно) Ты в ta, который имеет тип GameObject присваиваешь объект типа shtangafor - Это не логичино!)
Вот так правильней)
Код GameObject ta = GameObject.FindGameObjectWithTag("target"); shtangafor component = (ta != null) ? ta.GetComponent<shtangafor>() : null; if (component != null){ component.SetBool("for", true); }
Сообщение отредактировал ShortKedr - Вторник, 29 Марта 2016, 22:21 |
|
| |
Lertmind | Дата: Вторник, 29 Марта 2016, 19:38 | Сообщение # 36 |
заслуженный участник
Сейчас нет на сайте
| Тебе пишут "Cannot implicitly convert type `shtangafor' to `UnityEngine.GameObject'", что значит "Не могу неявно привести тип "shtangafor" к "UnityEngine.GameObject", то есть ты пытаешься присвоить переменной GameObject объект другого типа. Этот код public GameObject ta; ta = GameObject.FindGameObjectWithTag ("target").GetComponent<shtangafor> ().shtanga1.SetBool("for", true); кажется не к этой ошибке, но он тоже неверен, потому что SetBool ничего не возвращает.
|
|
| |
ShortKedr | Дата: Вторник, 29 Марта 2016, 22:21 | Сообщение # 37 |
Renword Studio
Сейчас нет на сайте
| Цитата Lertmind ( ) кажется не к этой ошибке, но он тоже неверен, потому что SetBool ничего не возвращает. Я хотел начать с простого объяснения, но так даже правильней
Сообщение отредактировал ShortKedr - Вторник, 29 Марта 2016, 22:22 |
|
| |
shustr1k76 | Дата: Пятница, 01 Апреля 2016, 15:45 | Сообщение # 38 |
почетный гость
Сейчас нет на сайте
| и все таки, Уважаемые Гуру, может запишите видео, о том как правильно сделать анимацию прыжка, начиная с 3 д макс и как воспроизвести в юнити? пытаюсь сделать прыжок вверх, в общем коряво выходит(
Сообщение отредактировал shustr1k76 - Вторник, 05 Апреля 2016, 01:18 |
|
| |
ShortKedr | Дата: Четверг, 07 Апреля 2016, 21:25 | Сообщение # 39 |
Renword Studio
Сейчас нет на сайте
| shustr1k76, могу сказать одно: Если ты работаешь с системой mecanim, где авто-перемещения в конце анимации реализованы, нужно анимацию делать соответственно. Например, ты хочешь, что бы у тебя персонаж двигался только по оси Z, следовательно нужно сделать так, что бы положение основы костей(точка, к которой всё привязано, root) в конце и в начале анимации по другим осям совпадали, а по Z осуществлялось перемещение)
С прыжком аналогично, НО:
Если анимация будет одна, то есть все следующие анимации будут в одной:
- Передвижение вверх - начало прыжка и сам прыжок персонажа
- Передвижение вниз - полёт вниз, махание ручками =D
- Остановка - приземление, или размазывание персонажа об землю и т.п.
То у тебя не получится сделать нормальный прыжок, т.к. всё будет в одной анимации и не будет разделяться никак - прыгнул и сразу приземлился. Нужно разбить всё на такие 3 анимации и потом уже написать контроллер для этого
|
|
| |
shustr1k76 | Дата: Воскресенье, 17 Апреля 2016, 02:49 | Сообщение # 40 |
почетный гость
Сейчас нет на сайте
| и сново я) все таки не работает рандомная анимация создал слой, сделал ему вес 1, сделал дерево, добавил три анимации, установил трешхолд
установил переход, blend типа int прописал значения
и вызываю так
Код if (panchJoy.IsPressed ()) { n = Random.Range (1, 3);
anim.SetInteger("blend", n);
} не работает ничего, что не так? помогите!
|
|
| |
|