Найди центр масс суммарного полигона, если он проходит через ось вращения, то предмет останется неподвижным, если промахнулся мимо, будет вращаться в ту сторону, где масса больше, относительно оси симметрии проведённой через ось вращения
У меня другой случай.
Цент масс есть.
И балка вращается, если по ней движутся объекты. Иначе она стоит не подвижно.
Считай напоминает детские качели. На каком краю больше вес, туда и кренится балка.

ronniko
> У меня другой случай.
> Цент масс есть.
Это тот самый случай, опускаешь вертикально вниз, из центра масс суммарного полигона (это будет другая точка, не ось вращения), луч и если он прошёл через ось вращения, то никуда крутить не надо, если луч прошёл правее/левее фигура крутится вправо/влево пока проекция вниз не будет проходить через ось вращения... ну или пока край не упрётся во что-то.
ronniko
Просто насколько у тебя частный случай? Вращение только в одной плоскости? Нужно определить только факт нарушения равновесия?
На балке может быть несколько предметов или всегда один?
Вращение только в Z плоскости.
На балке может быть несколько объектов. Ящик или бочки упали или герой толкает ящик по балке.
Или один герой поставил на левый край балки ящик, а на правый край балки прыгнул другой персонаж.
ситуации разные могут быть.
ronniko
Ну, тогда придется считать центры масс и моменты. Иначе будет очень нереалистично.
Ну, тогда придется считать центры масс и моменты.
:)
Как рассчитывать вес, что бы белка напала?
Если белка очень толстая, то никак :)
krkd
> Просто сделай полноценный физический движок, а не вот эти полумеры.
вместо полноценного физического движка, и полумер, используй четвертьмеры:
по краям балок (например на 1/4 ширины) добавь коллайдеры (триггеры)
когда игрок попадает в зону коллайдера, то включай "поворот" балки (в ту сторону, в какой стороне включился триггер)
никакой физики не надо. Для платформеров и ААА 3д шутеров такой подход работал и продолжает работать идеально. А главное, что он делается из говна и палок тех средств, которые уже есть.
skalogryz
В верном направлении думаешь :)
Более того, каждый триггер может хранить список объектов которые в нем и общую массу этих объектов.
Таким образом балка F1+mass triger1 и F2+mass triger2