Render.ru

Разваливание стенки примитивом

#1
Люди пожалуйста ответьте кто знает, почему когда я разбиваю примитивом стенку состоящию из ста плиток, примитив то пролетает через стенку, то виснит машина. Как оптимизировать просчёт динамики?
 
#3
Leshiy — Я нашёл решение как сэкономить на производительности и не использовать сразу сто плиток.Leshiy wrote:
>
> cто плиток - многовато имхо
 
#5
Для того, чтобы использовать кэш динамики, его нужно сначала создать. То есть динамика должна отыграть правильно. А именно с этим проблемы у nikkey.
 
#6
Не так.
Нужно стенку разделить на несколько частей и каждой части назначить свой решатель и для каждого решателя включить кэш.
 
#7
а что если центральные, то бишь главные плитки просчитывать динамикой, а остальные проанимить вручную?... 8/
 
#8
Здесь очень много что можно сделать.
1) Отключить ненужные состояния в FiniteStateMashine решателя:
Solvers->RigidBodySolver
Rigid Solver States:
Friction Off
Bounciness Off
...

2) Выбоать самый простой решатель, (MidPoint)
3) Включить кэш.
4) Использовать несколько решателей, короче:
http://localhost:4444/Maya5.0/en_US/Dynamics/RigidBodies13.html
 
#10
А имеет ли смысл повесить плитки на частицы и тем самым облегчить динамику?
 
#11
Ладно, подведем итоги....Собственно. из-за чего происходит "ступор" машины (ведь в этом корень всех бед)? Скорее всего, плитки в стене расположены близко или вплотную к друг другу. Следовательно, при ударе эти плитки получают относительно большую скорость и проникают друг в друга, и потом бедная динамика пытается разрулить эту ситуацию. Значит, нужно
а) резко увеличить оверсэмплинг;
б) либо отключить колизии плиток друг с другом
с) (что нужно проделать в первую очередь) раздвинуть плитки, чтобы между ними был просвет и проверить направление нормалей (они должны быть направлены наружу)
д) можно просимулировать плитки "по очереди"
е) есть еще много других замечательных методов
например, эмулировать удар изменяющимся радиальным полем и т.п.
 
#12
OFF TOP.

Столкнувшись с подобной проблемой (тоже стенку разваливать хотел),
развалил её в Cinema (почему-то гораздо быстрее) и затащил обратно в Maya.
Видимо алгоритм решения в Maya СЛИШКОМ точно пытается просчитать динамику (см. предыдущий пост).


Удачи.
 
#13
Выставить для всех тел Stand In в примитив, тем более что в задаче действуют одни примитивы. Важный момент, однако пропустили.
 
#14
Люди я пошёл другим путём. Назначив каждой плитки при помощи скрипта разное ускорение, причём в солвере ничего не менял. получилось достаточно эффектно, правда если-бы у меня был маленький объект разбивающий стенку ни чего бы не получилось. Затем перевёл всё в анимацию.
 
Сверху