2012-04-30 4 views
2

У меня вопрос об управлении положением персонажа AI в играх.Позиция игры AI в мире

В большинстве игр анимация игрока находится на месте, поэтому положение персонажа в наших руках.

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

мой вопрос: как обновить положение персонажа ai в мировом пространстве?

дополнительную информацию можно найти здесь. http://udn.epicgames.com/Three/RootMotion.html

Как нереальный двигатель использует движение корневой кости для перемещения своего собственного актера в мире.

спасибо.

+1

Извините, но некоторые вещи не ясны. Вы говорите об позиционировании персонажа AI по отношению к игровому миру или его анимации? Вы говорите, что персонаж возвращается к своей исходной позиции, когда он должен был двигаться вперед? (@ ", если мы хотим зацикливать эту анимацию, после того, как один шаг персонажа вернется на первое место, нам нужно, чтобы ai двигался вперед в мире.") Кроме того, обновление его позиции будет зависеть от того, как выполняется позиционирование, слишком. (@ «мой вопрос: как обновить положение персонажа ai в мировом пространстве?») – XenoRo

+0

Я имею в виду, как обновить положение ai в мире. предположим, что у нас есть анимация, которая прыгает на 1 метр вперед. этот 1 метр находится в локальном пространстве. Если я двигаюсь вперед, движение будет вдвое и уродливым. потому что анимация движется в локальном пространстве, и я перемещаю ai в worldspace. rootbone of character является дочерним символом ai. возможно, сыграв эту анимацию перед стеной, и я хочу убрать ее из стены на каждый кадр. –

ответ

0

Разве это не то же самое, что и ваш персонаж?

Обратите внимание, что сама анимация не имеет никакого отношения к «перемещению» в игровом мире. Важно то, что двигатель синхронизирует перевод модели и воспроизведение анимации, поэтому выглядит так, как будто анимация «ходьбы» перемещала символ вперед.

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

1

Анимации персонажей не должны определять, как изменяется их позиция, только их движения, поэтому она не перемещается в локальном пространстве.
Например, в гуляющей анимации персонаж перемещает ноги, возможно, его руки, но он не движется вперед. Это значительно упрощает цикл и конкатенацию анимаций.

+0

Да, это было бы прекрасно. но если вы играете в ресурсные игры, вы увидите много анимаций, которые не являются «inplace». движения могут быть более реалистичными, когда они разрабатываются в таких приложениях, как майя и 3dmax из-за захвата движения и имитации этих движений в играх с жестким корпусом и сильными силами, и результат не достаточно хорош. некоторые движения не линейны и делают путь, как кривая. –

Смежные вопросы