Скелетная анимация - Skeletal animation

«Кости» (зеленого цвета) изображали руку. На практике сами «кости» часто скрываются и заменяются более удобными для пользователя объектами или просто становятся невидимыми. В этом примере из проекта с открытым исходным кодом Blender эти «ручки» (синего цвета) были уменьшены, чтобы сгибать пальцы. Кости по-прежнему контролируют деформацию, но аниматор видит только ручки.

Скелетная анимация или риггинг - это метод компьютерной анимации, в котором персонаж (или другой шарнирный объект) представлен в двух частях: представление поверхности, используемое для рисования персонажа (называемое сеткой или кожей ), и иерархический набор взаимосвязанных частей (называемый кости , и все вместе образующие скелет или буровой установки ), виртуальный якорь Используется для анимации ( позы и ключевой кадр ) сетки. Хотя этот метод часто используется для анимации людей и других органических фигур, он служит только для того, чтобы сделать процесс анимации более интуитивным, и тот же метод можно использовать для управления деформацией любого объекта, например двери, ложки, здания. , или галактика. Когда анимированный объект является более общим, чем, например, гуманоидный персонаж, набор «костей» может не быть иерархическим или взаимосвязанным, а просто представлять высокоуровневое описание движения части меша, на которую он влияет.

Техника была представлена ​​в 1988 году Надей Магненат Тельманн , Ришаром Лаперриером и Даниэлем Тельманном . Этот метод используется практически во всех анимационных системах, где упрощенный пользовательский интерфейс позволяет аниматорам часто управлять сложными алгоритмами и огромным количеством геометрии; особенно с помощью обратной кинематики и других «целенаправленных» методов. В принципе, однако, цель этого метода никогда не состоит в том, чтобы имитировать реальную анатомию или физические процессы, а только для управления деформацией данных сетки.

Техника

Как описано в обучающей статье Джоша Петти:

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

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

Каждая кость в скелете связана с некоторой частью визуального представления персонажа ( сеткой ) в процессе, называемом скиннингом . В наиболее распространенном случае полигональной сетки кость связана с группой вершин ; например, в модели человека кость бедра будет связана с вершинами, составляющими многоугольники бедра модели. Части кожи персонажа обычно могут быть связаны с несколькими костями, каждая из которых имеет коэффициенты масштабирования, называемые весами вершин или весами смешивания . Таким образом, на движение кожи возле суставов двух костей могут влиять обе кости. В большинстве современных графических движков процесс создания скинов выполняется на графическом процессоре с помощью программы шейдеров .

Для многоугольной сетки каждая вершина может иметь вес смешивания для каждой кости. Чтобы вычислить окончательное положение вершины, для каждой кости создается матрица преобразования, которая при применении к вершине сначала помещает вершину в пространство кости, а затем возвращает ее в пространство сетки. После применения матрицы к вершине она масштабируется по соответствующему весу. Этот алгоритм называется скиннингом матричной палитры или скиннингом с линейным смешением , потому что набор преобразований костей (хранящихся в виде матриц преобразований ) формирует палитру для выбора вершины скина.

Преимущества и недостатки

Сильные стороны

  • Кость представляет собой набор вершин (или какой-либо другой объект, который что-то представляет, например, ногу),
    • Аниматору нужно управлять меньшим количеством характеристик модели,
      • Аниматор может сосредоточиться на крупномасштабном движении,
    • Кости подвижны независимо.
  • Анимация может быть определена простым перемещением костей, а не вершиной за вершиной (в случае полигональной сетки).

Недостатки

  • Кость представляет собой только набор вершин (или какой-либо другой точно определенный объект) и не является более абстрактным или концептуальным.

Приложения

Скелетная анимация - это стандартный способ анимировать персонажей или механические объекты в течение длительного периода времени (обычно более 100 кадров). Он обычно используется художниками по видеоиграм и в киноиндустрии , а также может применяться к механическим объектам и любым другим объектам, состоящим из жестких элементов и соединений.

Захват производительности (или захват движения ) может ускорить разработку скелетной анимации, а также повысить уровень реализма.

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

Смотрите также

использованная литература