Render.ru

Анимация по мотивам "осада замка" (PhysX + RayFire)

andrerosh

Активный участник
Рейтинг
7
#1
Здравствуйте!

Сразу хочу сказать что мой уровень в анимации слабый)

Давно видел конкурс с названием "осада замка", вот и захотелось самому попробовать сделать подобную анимацию в свободное время - анимация требушета, полет камня(снаряда), попадание в стену и ее разрушение!

Вот на данный момент анимировал с помощью PhysX Dynamic Rigid Body требушет и камень который он метает, собственно создались ключи анимации для этих обьектов. Далее я так понимаю нужно чтобы RayFire подхватил камень как Dynamic / Impact Object, который попадает а строение, которое в свою очередь фрагментированно RayFire и эти фрагменты добавлены в Sleeping Objects и должно происходить разрушение, которое считается уже с помощью RayFire.
В итоге у меня получается: если я ставлю на просчет в RayFire с определенного фрейма (когда камень уже перед стеной), он у меня не двигается дальше по инерции.. Вот не могу понять почему и как правильно сделать такую анимацию! Буду благодарен за советы))

Вот короткое видео
 

maiden666

Мастер
Рейтинг
112
#2
если ты сначала анимировал камень а потом добавил в динамик, то анимация больше не играет роли, надо использовать его как кинематический обьект, при этом если тебе нужно чтобы после попадания в цель он вёл себя по законам физического мира, в последних версиях Физикс\МассФХ есть переключатель - в определённом кадре обьект перестаёт быть кинематическим, а становится динамическим, доступна ли эта фишка через РейФайр - не знаю, Мирвадим так часто выпускает обновлённые версии, что у меня уже башка болит в них разбираться, предпочитаю чистый Физикс
 

andrerosh

Активный участник
Рейтинг
7
#3
я думал что у меня получится сделать так как в этом примере: http://www.youtube.com/watch?feature=player_detailpage&v=9RomdSm4XGM#t=1240s
когда обьект по инерции продолжает двигаться..



ты в своем ответе имел ввиду чтоб в нужном фрейме переключить камень из кинематического обьекта в динамический и тогда подхватить его рейфаером?
 

maiden666

Мастер
Рейтинг
112
#4
да. только РейФайр по большому счёту и не нужен, всё можно сделать без него
 

iVAt

Знаток
Рейтинг
68
#5
так если у тебя камень как кинематический объект с 90 кадра, то нужно удалить все его ключи анимации после 90 кадра или 89, поэкспериментируй. как то так.
 

andrerosh

Активный участник
Рейтинг
7
#6
да. только РейФайр по большому счёту и не нужен, всё можно сделать без него
я делал разрушение только с помощью PhysX, но мне результат не очень нравится. RayFire все же намного лучше крушит, хотя бы тот же demolish geometry))



удалял ключи после 90-го кадра, в итоге камень стоит на месте! так что не вариант))

Есть еще у кого то какие идеи?)
 

iVAt

Знаток
Рейтинг
68
#7
я бы камень который крушит отдельным объектом сделал. в принципе дожно и так работать, выложи файл если можешь.
 

iVAt

Знаток
Рейтинг
68
#9
покрутил сцену, в общем мои выводы такие:

1. камень не стоит на месте, а медленно падает вниз, горизонтальное движение не передаётся - рис.1. медленно подозреваю что из-за единиц измерения.
2. вставил камень в сцену с метровыми единицами измерения, стал падать нормально, но горизонтального движения всё равно нет - рис.2 (рядом шарик с ручной анимацией начального горизонтального ускорения).
3. смотрим контроллеры шариков и видим отличия - рис.3. похоже RayFire не корректно работает с такой структурой контроллеров.
4. идём в курви едитор и коллапсим - рис.4.
5. проверяем рис.5.

ну и повторюсь, лучше камень который крушит сделать отдельным объектом и с меньшим количеством полигонов. как то так)
 

Вложения

andrerosh

Активный участник
Рейтинг
7
#10
покрутил сцену, в общем мои выводы такие:

1. камень не стоит на месте, а медленно падает вниз, горизонтальное движение не передаётся - рис.1. медленно подозреваю что из-за единиц измерения.
2. вставил камень в сцену с метровыми единицами измерения, стал падать нормально, но горизонтального движения всё равно нет - рис.2 (рядом шарик с ручной анимацией начального горизонтального ускорения).
3. смотрим контроллеры шариков и видим отличия - рис.3. похоже RayFire не корректно работает с такой структурой контроллеров.
4. идём в курви едитор и коллапсим - рис.4.
5. проверяем рис.5.

ну и повторюсь, лучше камень который крушит сделать отдельным объектом и с меньшим количеством полигонов. как то так)

------------------------------
Всё можно сделать из одного вертекса;)
Спасибо! Поменяю единицы и буду теперь крутить дальше))
 

FlyingCube

Пользователь сайта
Рейтинг
2
#11
Всем привет!
Не хочу создавать новую тему, т.к. вопрос мне кажется простой...но что-то я сам не могу найти ответ :)
Собственно сам вопрос:
как сделать так, чтобы разрушенные рэйфаером объекты не пролетали сквозь статические объекты.
Пишут, что нужно сделать сетку поплотнее у стат. объектов, но это как-то не помогает.
Толщину тоже увеличивал.

У меня осколки летят на большой скорости...мне кажется это одна из причин.
 

maiden666

Мастер
Рейтинг
112
#12
если бы дело касалось частиц, я бы посоветовал увеличить Subframe Sampling, есть ли аналогичная настройка у PhysX- не знаю, хотя должна быть
 

Андрей Кумачев

Пользователь сайта
Рейтинг
2
#15
Добрый вечер) Решил тоже задать свой вопрос здесь.
При просчете анимации разрушения чуть сложнее элементарной, вылезает вот такая штука. И как это победить не знаю((
 

Вложения

Сверху