PureBasic
PureBasic - VertexAnimation
Обзор
Библиотека VertexAnimation позволяет управлять анимацией Поз (это эффективный подвид вершинной анимации).
Опорная Поза представляет собой набор смещений к данным базовых вершин Сетки (Mesh) и может быть разреженной, т.е. она может ссылаться не на каждую вершину Сетки. Позы встраиваются непосредственно в Сетку, например с помощью бесплатного 3D-редактора Blender, а просмотреть их можно с помощью OgreMeshy-1.6 или новее.
Анимация Поз позволяет смешивать несколько Поз вершин с различным уровнем влияния (весом) в конечное состояние вершин, как внутри трека, так и между Анимациями.
Каждый Трек Анимации Поз относится к одному набору геометрии (либо к геометрии основной Сетки, либо к геометрии выделенной суб-Сетки), и каждый ключевой кадр трека может ссылаться на одну или несколько Поз, каждая из которых имеет свой собственный уровень влияния. Коэффициент веса, примененный ко всей Анимации, также масштабирует эти уровни влияния. Вы можете определить множество ключевых кадров, которые в течении времени воспроизведения Трека, используя интерполяцию, вызывают требуемую деформацию Сущности. Отсутствие в ключевом кадре ссылки на Позу, когда она присутствует в соседнем кадре, приводит к тому, что интерполяция рассматривает влияние данной Позы в этом кадре как - 0.
Этот набор функций очень хорошо подходит для мимики лица.
Например, скажем, вы смоделировали лицо (один набор данных вершин - Mesh) и определили набор Поз, которые бы представляли различные выражения лица. Затем можно создать Анимацию под названием "Hello", содержащую один Трек, который ссылается на данные вершин лица, и который включает в себя серию ключевых кадров, каждый из которых ссылается на одно или несколько выражений лица с различными уровнями влияния - комбинация которых со временем заставит лицо приняло форму, необходимую для того, чтобы сказать слово "привет".
Вы можете комбинировать анимацию Поз со Скелетной анимацией и анимацией Узлов.
Перед использованием функций этой библиотеки необходим успешный вызов команды InitEngine3D().
Список команд
AddVertexPoseReference
CreateVertexAnimation
CreateVertexPoseKeyFrame
CreateVertexTrack
MeshPoseCount
MeshPoseName
UpdateVertexPoseReference
VertexPoseReferenceCount
Пример
VertexAnimation.pb
Поддерживаемые OS
Все