Ця богомерзкая фізика

Добридень!
Почав розбиратися з фізичним движком unity. У надії, що його можна використовувати в задачах серйозніше фонових фізичних процесів.

Перший затикаючи - пружність тіла. Береться кульку (+ коллайдер з рігідбоді) і встановлюється над площиною. У кульки є фізичний матеріал з Bounciness 1 і BounceCombaine - Minimum. У матеріалу площині Bounciness 1. Гнучкість одиниця, по ідеї якщо відпустити кульку, він буде нескінченно стрибати на одну і ту ж висоту.
Але на ділі кулька стрибає з амплітудою, як ніби пружність у нього більше одиниці. Якщо встановити трохи менші Bounciness, то кулька все також продовжує збільшувати амплітуду.
При Bounciness 0.5 кулька нескінченно стрибає на маленькій висоті приблизно 0.2 (скидаю з висоти 2).
Чому таке відбувається? Як впливає Bounciness на реальну поведінку кульки?
Чому її не можна виставити вище 1?
Нереалістично? - фігня, при Bounciness 1 кулька і так веде нереалістично.

Сподіваюся тут мені допоможуть розібратися

Вбудована через зад працює.
Хочеш нормальної фізики - пиши свою.

Припускаю, що має значення маса тел. Спробуй зробити масу статі нескінченною.
Ще спробуй поставити пружність статі на 0, а кульки на 1.

А так, так, є сенс в написанні власної фізики, чисто для інтересу і досвіду. Але тільки якщо з фізики п'ятірка, інакше гівна наворотів.

А що саме ти маєш на увазі під серйозніше?

У мене пів коллайдер без рігідбоді і без маси. Пружність не допомагає.

Для початку я хочу, щоб фізика просто працювала за описаними в мануалах законам, а то інакше вона годиться тільки для симулювання сміття під ногами.

А що якщо підлозі тоді поставити rigidbody і матеріал?

Крім того, спробуй всі варіанти BounceCombine.

А що б ти став робити, якщо б фізика показала точну відповідність з реальністю?

У Unity не писали свою фізику - у них 3д шная фізика - PhysX від Nvidia. щоб написати щось серйозне - доведеться багато тестів зробити і сторінок прочитати)

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

BounceCombine вже весь перепробував.

Повної відповідності з реальністю зараз ніде бути не може. Я хочу, щоб виконувалася елементарна арифметика.
Поки я не можу для початку нормально налаштувати навіть фізику м'ячика-стрибунець, на рівному місці замут виникають, а складність - сьомий млинець клас + векторна математика.

jetyb писал (а): Не можу я рігідбоді (навіть якщо все буде ок) на все ставити (а потім еше доведеться йому насильно давати фриз).

А чого ви тоді чекаєте від фізики, якщо не хочете використовувати тверде тіло. на підставі чого, фіз движок повинен вести розрахунки?
Дивні люди з дивними бажаннями.

Блін, на підставі коллайдеров!
Щоб вони задавали закріплені жорсткі об'єкти. Фізика поведінки статі мене абсолютно не хвилює, мене хвилює фізика поведінки кульки. Або зіткнення з колайдера утворюють власну "фізику"? Тоді взагалі б взаємодію з колайдера відключили.

І якщо без коллайдеров, як взагалі щось фізичне можна створити? Без того ж террайн коллайдера?
Рігідбодей багато не поставиш, вони навантажують систему. Так хіба що астероїди в порожнечі можна зробити.

P.S
перевірив
З рігідбодямі ефект такий же.

jetyb писал (а): Блін, на підставі коллайдеров!
перевірив
З рігідбодямі ефект такий же.


Почнемо з самого початку:
1. Коллайдер - компонент для виявлення зіткнень. Усе. Він не справжній фізичний об'єкт, він тільки оболонка задає кордон обсягу фіз об'єкта.
2. Rigidbody без фізичних матеріалів - це просто абстрактний фізичний об'єкт не має інших характеристик крім маси.
3. Фізичні матеріали дають Rigidbody характеристики пов'язані з тертям, пружністю і т.д.
Тобто, для мінімальної роботи фізики потрібні 2 об'єкти кожен з яких містить Collider + Rigidbody + Physics Material, причому останні два повинні бути відповідно налаштовані.
Не дотримуєтесь ці правила - пишіть свою фізику.

Коллайдер + кінематики рігідбоді вантажить фізику менше ніж просто коллайдер.

1. Коллайдер - компонент для виявлення зіткнень. Усе. Він не справжній фізичний об'єкт, він тільки оболонка задає кордон обсягу фіз об'єкта.

2. Rigidbody без фізичних матеріалів - це просто абстрактний фізичний об'єкт не має інших характеристик крім маси.

Тобто, для мінімальної роботи фізики потрібні 2 об'єкти кожен з яких містить Collider + Rigidbody + Physics Material, причому останні два повинні бути відповідно налаштовані.


Перевіряв.
Кулька з на площині з кінематики рігідбоді поводиться так само як кулька на площині з колайдером, тобто при однакових матеріалах і пружності 1 стрибає з амплітудою.
У рігідбодь така ж хвороба.

Коллайдер + кінематики рігідбоді вантажить фізику менше ніж просто коллайдер.


У доках пишуть що кінематики рігідбоді підходять для статичних коллайдеров, які можуть рухатися.

Схожі статті