Пользовательская анимация Box2d Ragdoll - PullRequest
1 голос
/ 25 октября 2011

У меня есть тряпичная кукла, полностью контролируемая физикой, но я хочу управлять ею самостоятельно, добавляя анимацию, и когда я нажимаю на каждую часть тела, она действует полностью физически

То, что я сделал, было

  1. Создайте тряпичную куклу полностью с физикой и суставами
  2. Уметь перетащить любую его часть
  3. Установить состояние как анимацию, и оно меняет состояние каждого на кинематическое

Теперь я хочу выполнить свою анимацию для каждой части независимо, я имею в виду, изменить ее положение и угол, проблемы:

  1. Когда я вращаю руку и ноги, она вращается из центра, и я хочу, чтобы она вращалась из «точки соединения», чтобы я мог управлять углом руки с помощью простого setTransform (pos, angle)

Как мне этого добиться?

1 Ответ

1 голос
/ 25 октября 2011

Обычно тряпичные куклы используются, когда ваш персонаж убит, чтобы имитировать его падение реалистичным. Так что я не думаю, что вам действительно нужно, чтобы ваш персонаж постоянно физически моделировался. Более того, если вы просто установите его положение, вы все равно получите нефизическое поведение (по крайней мере, у вас должны быть правильные скорости для каждой части вашего персонажа, иначе симуляция не будет реалистичной из-за неправильной обработки столкновений). Поэтому обычно достаточно просто создать AABB или связанную сферу для контроля столкновений с вашим персонажем во время движения. Когда персонаж умирает - сделайте тряпичную куклу, чтобы симулировать смерть. Поэтому я предлагаю вам разделить графическое и физическое представление вашего персонажа, кроме смерти

...