Вторник, 16 Апреля 2024, 23:36

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Грудь не прыгает, когда происходит анимация [РЕШЕНО] (только когда перемещается персонаж (Spring Joint))
Грудь не прыгает, когда происходит анимация [РЕШЕНО]
alexsilentДата: Среда, 21 Сентября 2016, 14:57 | Сообщение # 1
почти ветеран
Сейчас нет на сайте


Хочу сделать эффект прыгающих грудей, закрепил их к телу через Spring Joint, всё нормально, когда персонаж перемещается,
НО, когда происходит анимация и персонаж не перемещается - грудь статичная, как будто заморозили.
1) в чём дело, ведь при анимации тело (Body) тоже перемещается и изменяются координаты?
2) Если не получится решить обычным способом, то какой функцией можно пробудить/сэмулировать Spring Joint перемещение при анимации?
Может есть такие функции?

PS это не кадровая анимация, а внутриюнитовская, то есть все спрайты (руки ноги голова) отдельные, и они почти как 3д объекты, другими словами тело (Body) перемещается реально, хоть и внутри анимации, это не покадровая анимация.



Сообщение отредактировал alexsilent - Среда, 21 Сентября 2016, 16:03
VickaДата: Среда, 21 Сентября 2016, 15:02 | Сообщение # 2
Another ART
Сейчас нет на сайте
alexsilent, ой, ты чёто теплое с мягким путаешь.
Мухи отдельно котлеты отдельно
Физика это одно, кадровая анимация совсем иное.
Выход в ручную анимировать грудь в соответствии с движением.


alexsilentДата: Среда, 21 Сентября 2016, 15:05 | Сообщение # 3
почти ветеран
Сейчас нет на сайте
Цитата Vicka ()
Физика это одно, кадровая анимация совсем иное.

Vicka точно, забыл сказать, это не кадровая анимация, а внутриюнитовская, то есть все спрайты (руки ноги голова) отдельные, и они почти как 3д объекты, другими словами тело (Body) перемещается реально, хоть и внутри анимации, это не покадровая анимация.
VickaДата: Среда, 21 Сентября 2016, 15:07 | Сообщение # 4
Another ART
Сейчас нет на сайте
alexsilent, анимируешь ты ее таймлайном?

alexsilentДата: Среда, 21 Сентября 2016, 15:16 | Сообщение # 5
почти ветеран
Сейчас нет на сайте
Цитата Vicka ()
анимируешь ты ее таймлайном?

Vicka, да. Вот скриншот, как бы перемещения у тела (Body) есть.



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


Сообщение отредактировал alexsilent - Среда, 21 Сентября 2016, 15:19
URGINSANДата: Среда, 21 Сентября 2016, 15:17 | Сообщение # 6
почти ветеран
Сейчас нет на сайте
alexsilent, делай анимацию грудей через скрипт с помощью transform.localPosition. Должно сработать. Что то типа этого:
Код

private float extendedY;

void Update()
{
    grud.transform.localPosition = new Vector3 (grud.transform.localPosition.x,grud.transform.localPosition.y + extendedY, grud.transform.localPosition.z);
}

Типа этого я бы сделал, только переменную extendedY заставь маленько двигаться вверх-вниз имитируя ходьбу. Должно по идее работать.


Я на драйве
alexsilentДата: Среда, 21 Сентября 2016, 15:23 | Сообщение # 7
почти ветеран
Сейчас нет на сайте
А может дело в том, что у Body, нужно было обязательно ригидбоди добавить, но поскольку он чайлд, а не родитель,
то мне пришлось блокировать все галочки. Может из-за этого нет дёргания при анимации?
Но если все галочки убрать, то эффект прыгания пропадает даже при перемещении.
VickaДата: Среда, 21 Сентября 2016, 15:28 | Сообщение # 8
Another ART
Сейчас нет на сайте
alexsilent, а вот тут есть пункт физики может в нем дело?

Есть еще такая штука как кости.

думаю тебе нужно чтото вроде этого




Сообщение отредактировал Vicka - Среда, 21 Сентября 2016, 15:34
alexsilentДата: Среда, 21 Сентября 2016, 16:01 | Сообщение # 9
почти ветеран
Сейчас нет на сайте
Vicka, к сожалению не помогло выставить ФИЗИКУ в аниматоре. Но за ассет спасибо, выглядит интересно для будущих разработок)

URGINSAN, Спасибо большое, вполне хорошо работает. Только у меня ЯваСкрипт, но суть таже. Теперь всё прыгает как надо! xD

Код

function JumpingObjects() {
    if (Tits1) Tits1.localPosition += Vector3(Random.Range(-.1,.1),.1,0);
    if (Tits2) Tits2.localPosition += Vector3(Random.Range(-.1,.1),.1,0);
}


Сообщение отредактировал alexsilent - Среда, 21 Сентября 2016, 16:05
URGINSANДата: Четверг, 22 Сентября 2016, 14:20 | Сообщение # 10
почти ветеран
Сейчас нет на сайте
alexsilent, рад был помочь! :)

Я на драйве
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Грудь не прыгает, когда происходит анимация [РЕШЕНО] (только когда перемещается персонаж (Spring Joint))
  • Страница 1 из 1
  • 1
Поиск:

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