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

Треугольные сетки в PhysX

#0
13:08, 13 апр 2020

Приветствую.
Вопрос касается такой темы как triangle mesh, я пытаюсь создать объект сложной формы который будет работать как обычное динамическое тело, сам объект из треугольных сеток создаётся отлично, но вот он работает как кинематическое тело, то есть он не падает под действием гравитации, не отлетает при ударах.
В документации написано что тело созданное из треугольной сетки может быть только кинематическим, но я находил несколько моментов в видео, в которых тела сложной формы(созданные с помощью треугольной сетки) ведут себя как надо.
Вот тут или тут например.

Единственное что мне приходит в голову это создать кучу треугольников(convex mesh) из данных треугольной сетки и соединить их с помощью joints, но я не знаю будут ли нормально работать пару тысяч таких треугольников.

На github не отвечают.
Что мне делать?

#1
16:00, 13 апр 2020

Этим объектам присваивается близкий по форме Shape в PhysX  , например, Capsule. - это значительно упрощает расчёт столкновений и скорость в целом.

#2
19:02, 13 апр 2020

Но это же крайне неточно.

#3
19:13, 13 апр 2020

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

Поэтому, всё что движется - есть простые SHAPE : Сферы, Параллелепипеды, Капсулы. Они просчитываются очень быстро. Или объекту на отдельные конечности и движущиеся части добавляют отдельный простой SHAPE для просчёта в PhysX и связывают элементы через Joints.

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

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