ПрограммированиеФорумФизика

Симуляция повреждений (2 стр)

Страницы: 1 2 3 Следующая »
#15
17:32, 10 сен 2012

Suslik
Если брать минимум, то острая игла будет наносить урона больше, чем большой кирпич...

#16
18:12, 10 сен 2012

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

#17
20:20, 10 сен 2012

Ок, согласен. Но не могу придумать что делать с неподвижными объектами. Во всех физ движках, что я видел, статические объекты имеют массу inf, то есть обратную массу 0. По формуле они не смогут получать урон. Вот допустим, поставили забор. Он должен бы весить 50 кг, но так как недвижимый, весит inf. Как ему урон сделать?

#18
20:42, 10 сен 2012

AntonV
> Он должен бы весить 50 кг
В момент контакта с забором сделай массу 50 кг.

#19
21:26, 10 сен 2012

AntonV
> По формуле они не смогут получать урон. Вот допустим, поставили забор. Он
> должен бы весить 50 кг, но так как недвижимый, весит inf. Как ему урон сделать?

float damage0 = contact->deltaVelocityProjection / (min(contact->body0->avgCrossSection, contact->body1->avgCrossSection));

как не сможет? ещё как сможет. всё завист от того, сколько ты хп ему присвоишь. если хочешь, присваивай ему не бесконечность хп(как следовало бы из массы), а какое-то конечное количество. и не слушай fzr125

#20
22:01, 10 сен 2012

Ну да, тупанул я... Более не буду. Сорри.

#21
0:14, 11 сен 2012

Хм, на прошлой странице в формуле фигурировало contact->body0->mass, что в принципе логично - чем больше один объект, тем меньше урон от другого.

#22
0:30, 11 сен 2012

делил на массу я импульс. в случае с землёй это была бы неопределённость ноль делить на ноль, поэтому я убрал из формулы массу, предложив заменить её изменением скурости. большой объект при ударе получает ничуть не меньше повреждений - куда логичнее считать, что у него просто хп больше. повреждения он получает те же, что и маленький, просто для него это менее существенно.

#23
1:49, 11 сен 2012

Ну по идее нужно решётчатую конструкцию рассмотреть и посчитать количество разрывов в ней...и делить на общее число связей...

#24
12:30, 15 сен 2012

я бы для начала разбрался с терминологией. есть объект, он обладает некой прочностью(const) - то количество энергии поглотив которую он разрушится,
урон допустим - то количество энергии тела которое поглощается им при столкновении.
а повреждение - то количество энергии которое поглотил(или накопил) объект.
допустим есть два шара, прочность одного 500, а другого - 1000, вес - одинаковый, они падают с одной высоты на пол, т.е. энергия в шаров в момент столкновения одинаковая, далее делим эту энергию (вот тут включайте коэффициенты для разных материалов разные), одна часть останется (шар продолжит движение изменив направление), вторая часть рассеится, а третья пойдет на накопление повреждения. тогда один шар развалится а второй наполовину повредится.
или такой пример: навстречу друг другу катятся два шара. масса равная, прочность одного - 100, а второго - 10, при столкновении второй шар не сможет поглотить много энергии и развалится, а первый покатится дальше. вопрос остается в том как перераспределять энергию после столкновения.

#25
15:37, 15 сен 2012

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

#26
17:49, 15 сен 2012

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

#27
20:41, 15 сен 2012

Dent
> если удар не абсолютно упругий то потерянная часть энергии пойдет на
> повреждение
если удар не абсолютно упругий, то энергия может перейти в тепло. может перейти в энергию собственных колебаний. ни то, ни другое повреждением не является. а по твоей формуле идеально упругий стеклянный шарик можно с какой угодно силой кидать о стену и так как коэффициент отскока не бесконечность, то он не будет получать повреждений. реальная природа такого рода повреждений - именно импульс, который передаётся через малую площадку на поверхности тела.

#28
21:07, 15 сен 2012

еще раз прочти мой первый пост, я говорил что энергия делится на три части, одна останется, одна рассеится (тепло), а третья - пойдет на повреждение (разрыв внутренних связей). тут только коэффициенты подбирать остается.

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

#29
21:19, 15 сен 2012

Dent
> еще раз прочти мой первый пост, я говорил что энергия делится на три части,
> одна останется, одна рассеится (тепло), а третья - пойдет на повреждение
> (разрыв внутренних связей).
ещё раз - физический двиг тебе сообщит только о скоростях до и после соударения. из этих данных ты можешь посчитать разницу энергий и в случае идеально упругого соударения эта разница всегда будет нулевой. по идее если обменный импульс превышает некоторое пороговое значение(для случая хрупких материалов), то соударение из упругого становится неупругим, часть энергии идёт на разрушение связей между молекулами тела. простыми коэффициентами пропорции это смоделировать не удастся.

Страницы: 1 2 3 Следующая »
ПрограммированиеФорумФизика

Тема в архиве.