Описание трехмерного пространства в компьютерной среде стало сильным толчком к развитию компьютерной графики в целом.
Сегодня 3D графика активно используется в рекламе, кинофильмах, проектировании, мультфильмах и играх. Персонажи внутри обладают личностными качествами, они двигаются, общаются и достигают своих целей не забывая выглядеть при этом живыми.
Модель персонажа представляет из себя сложную геометрическую фигуру, детальность которой оценивается количеством полигонов. Полигон - это плоскость, треугольник или четырехугольник.
Как пример - куб, состоит из 8 точек, соединенные между собой гранями, которые в свою очередь образуют 6 сторон, или как по-нашему, 6 полигонов. Современные персонажи в играх имеют обычно от 10 до 100 тысяч полигонов, мультипликаторы же могут позволить себе больше миллиона полигонов, так как деформация модели происходит на мощнейших компьютерах, после переходя в формат видео.
Одним из первых анимированных персонажей в видеоиграх стал Крэш из игры Crash Bandicoot 1996 года. Он умеет бегать, прыгать, крутиться, погибать, ездить на своем кабане и ожидать.
Сама анимация представляла из себя смену позиции полигонов, а еще более грубо говоря - изменение геометрии. Анимация была резкой, не плавной, количество полигонов в персонаже не достигало даже 200.
Прыжок например, представлял из себя последовательность изменений модели длиной в 10-20 позиций. Полигональная анимация по прежнему применяется для анимации ткани и волн.
Через 2 года компания Valve выпускает Half Life, ставшую иновационной во многих аспектах, в том числе и анимации.
Движения персонажей были плавными, их лица обладали примитивной мимикой и всё благодаря скелетной анимации. Попытка реализовать в игре принципы нашей реальности оказалась более чем успешной.
Как это работает? Внутрь модели персонажа добавляются условные кости, например на человеческий скелет с пальцами на руках хватает 52 кости. Скелет представляет из себя иерархию наследуемых объектов, вместе с плечом поднимется и вся рука (технически все наследуемые кости).
Каждой косточке задается зона влияния, которая охватывает нужное количество полигонов, которые в свою очередь двигаются, вращаются и масштабируются вместе с костью.
Таким образом анимацию ,например, бега, можно сделать двигая 10-15 костей вместо тысяч полигонов.
Заслугой плавности послужила технология ключевых кадров. Достаточно задать 2 разных позы и компьютер сам расчитает в каком месте будут кости в промежуточных кадрах.
В погоне за реализмом, в тесный контакт со скелетной анимацией вступила технология захвата движения. Она, конечно, использовалась и ранее, в более примитивной её форме, в кинематографе, в кукольных мультфильмах, но сейчас это позволяло записать последовательность передвижения костей и натянуть на них десятки моделей.
- Казалось бы, куда лучше? - недоумевая спрашивает мир. - Туда! - восклицает прогресс.
Заранее записанные движения могут сыграть плохую шутку в играх, поэтому следующим шагом в развитии анимаций стала процедурная анимация. Персонаж боком стоит на ступени и одна нога висит в воздухе? Дело поправимое. Разберемся на примере :
Технически программа вмешивается в анимацию, определяет где мы стоим и в случае, если нога не соприкасается с поверхностью, вмешивается и перезаписывает часть анимации, а конкретно позицию нескольких костей ноги так, чтобы нога соприкасалась с поверхность.
Отличным примером процедурной анимации можно считать игры Rockstar Games. В Grand Theft Auto IV была интегрирована система Europhia, разработанная учеными. Персонажи реагировали буквально на всё : подтолкнуть машиной и на неё будут опираться, выстрел в плечо заставит персонажа зажать рану ровно в месте выстрела и таких примеров сотни. Упрощенную, а где-то улучшенную версию этой системы Rockstar Games по - прежнему добавляют в своих игры.
С каждым годом разработчики удивляют новым уровнем взаимодействия игрока с игровым миром, как бы вы не были уверены в том, что анимации достигли пика развития, прогресс на месте не остановится.