Оптимизация преобразований для скелетной анимации
УДК 519.21:519.72
Оптимизация преобразований для скелетной анимации
© С.А. Ивлиев, А.А. Павельев, Н.Ю. Рязанова
МГТУ им. <...> Н.Э. Баумана, Москва, 105005, Россия
В статье рассматриваются вопросы воспроизведения движения объектов графической сцены, заданных в виде скелетных моделей, в реальном масштабе времени. <...> Предлагается подход к оптимизации временных затрат на формирование кадра
изображения, заключающийся в реализации комбинированного решения: задавать
преобразования набором — кватернион, коэффициенты масштабирования и перенос, а хранение и преобразование выполнять в виде матрицы перехода. <...> Для генерации движения (анимации) реалистических изображений
трехмерных графических объектов в реальном масштабе времени используются различные методы, выбор которых обусловлен сферой
применения. <...> Наиболее жесткие требования к изображению движения
на экране предъявляются в 3D-играх. <...> При разработке соответствующего программного обеспечения возникают следующие вопросы: как
реализовать анимацию, задать ее и редактировать, как оптимизировать
преобразования, связанные с движением для получения реального
времени, как экспортировать в систему визуализации, какие форматы
входных и выходных файлов использовать и т. п. <...> В настоящее время
скелетная анимация стала стандартом в анимации персонажей или механических объектов не только в игровой индустрии, но и в кино. <...> В основе скелетной анимации лежит скелетная структура объекта, т. е. набор иерархически упорядоченных костей, к которым уже
крепится часть визуального представления объекта. <...> Корневая кость формирует точку опоры для всей
скелетной структуры. <...> Все остальные кости скелета крепятся к корневой, как потомки. <...> Для каждой кости задается трехмерное преобразование (позиция, размер, ориентация) относительно родительской кости. <...> Каждая кость скелета задается как вектор в системе координат
скелета, где опорная точка <...>