Остановите оживление скелета
void agk::StopSkeleton2DAnimation( UINT iSkeleton )
iSkeleton - Идентификатор скелета для изменения
Устанавливает, является ли указанный скелет видимым или нет. AGK автоматически скроет скелет, когда он переместится за пределы экрана, чтобы повысить производительность, поэтому вам нужно сделать это только в том случае, если вы хотите скрыть его, пока он находится на экране. Когда скелет спрятан, он все равно оживет.
void agk::SetSkeleton2DVisible( UINT iSkeleton, int mode )
iSkeleton - Идентификатор скелета для изменения
mode - 1, чтобы сделать его видимым, 0, чтобы скрыть его
Устанавливает угол корня скелета, углы костей будут относительно этого угла.
void agk::SetSkeleton2DRotation( UINT iSkeleton, float r )
iSkeleton - Идентификатор скелета для изменения
r - Угол использования в градусах
Устанавливает положение корня скелета, положение костей будет относительно этого места. Это может быть использовано для перемещения скелета во время его анимации, чтобы сделать его похожим на ходьбу.
void agk::SetSkeleton2DPosition( UINT iSkeleton, float x, float y )
iSkeleton - Идентификатор скелета для изменения
x - Положение X скелета
y - Положение Y скелета
Устанавливает горизонтальный и вертикальный режим переворота скелета, это будет переворачивать все кости и спрайты вдоль горизонтальной или вертикальной оси (или и то, и другое).
void agk::SetSkeleton2DFlip( UINT iSkeleton, int flipH, int flipV )
iSkeleton - Идентификатор скелета для изменения
flipH - 1-перевернуть скелет по горизонтальной оси, 0-не перевернуть.
flipV - 1-перевернуть скелет по вертикальной оси, 0-не перевернуть.
Устанавливает глубину этого скелета в диапазоне 0-10000 с 0 - вершиной.
void agk::SetSkeleton2DDepth( UINT iSkeleton, UINT depth )
iSkeleton - Идентификатор скелета для изменения
depth - Значение глубины для использования
Установите исходную шкалу кости. Анимация переопределит это значение.
void agk::SetSkeleton2DBoneScale( UINT iSkeleton, int bone, float sx, float sy )
iSkeleton - Идентификатор скелета для изменения
bone - Идентификатор кости для модификации
sx - Новое значение шкалы X для использования
sy - Новое значение шкалы Y для использования
Установка исходного положения кости относительно ее родителя также известна как установочная поза. Вся анимация будет находиться относительно этой позиции, она может быть изменена во время воспроизведения анимации.
void agk::SetSkeleton2DBonePosition( UINT iSkeleton, int bone, float x, float y )
iSkeleton - Идентификатор скелета для изменения
bone - Идентификатор кости для изменения
x - Новая позиция X для использования
y - Новая позиция Y для использования
Устанавливает, может ли кость оживать или она остается неподвижной. Вы все еще можете изменить положение кости, угол наклона и масштаб вручную.
void agk::SetSkeleton2DBoneMode( UINT iSkeleton, int bone, int mode )
iSkeleton - Идентификатор скелета для изменения
bone - Идентификатор кости для модификации
mode - 1, чтобы позволить кости оживать, 0, чтобы остановить ее
Устанавливает скорость анимации (по умолчанию 1.0), отрицательные значения разрешены для реверса анимации.
void agk::SetSkeleton2DAnimationSpeed( UINT iSkeleton, float speed )
iSkeleton - Идентификатор скелета для изменения
speed - Скорость анимации с 1.0 является нормальной скоростью
Установите исходный угол кости относительно ее родителя. Вся анимация будет относительно этого угла, он может быть изменен во время воспроизведения анимации.
void agk::SetSkeleton2DBoneAngle( UINT iSkeleton, int bone, float r )
iSkeleton - Идентификатор скелета для изменения
bone - Идентификатор кости для модификации
r - Новый угол для использования
Устанавливает скелет в определенную точку анимации в зависимости от времени, с дополнительным временем твиннинга. Время анимации будет плавно интерполировать скелет из его текущего состояния в выбранный кадр указанной анимации, чтобы не было резкого перехода.
void agk::SetSkeleton2DAnimationFrame( UINT iSkeleton, const char* anim, float time, float tweentime )
iSkeleton - Идентификатор скелета для изменения
anim - Имя используемой анимации
time - Смещение времени, используемое для установки каркаса скелета
tweentime - Количество секунд для перехода из текущего состояния в заданный кадр
Воспроизводит данную анимацию по имени, если она существует с необязательным временем начала (По умолчанию 0), необязательным циклом и необязательным временем анимации (по умолчанию 0). Время анимации будет плавно интерполировать скелет из его текущего состояния в первый кадр указанной анимации, прежде чем он начнет анимацию, так что резкого перехода не будет. Значение цикла 1 будет петлять вечно, значение цикла больше 1 будет петлять столько раз, а затем остановится, а значение цикла 0 будет воспроизводить анимацию один раз, а затем остановится
void agk::PlaySkeleton2DAnimation( UINT iSkeleton, const char* anim, float starttime, int loop, float tweentime )
iSkeleton - Идентификатор скелета для изменения
anim - Название анимации для воспроизведения
starttime - Необязательное смещение в анимацию для пропуска некоторых кадров
loop - 1, чтобы зациклить анимацию до тех пор, пока она не остановится, 0, чтобы воспроизвести ее один раз, больше 1, чтобы зациклить столько раз
tweentime - Количество секунд для перехода из текущего состояния перед анимацией
Загружает анимацию спрайтера, экспортированную в формате JSON. Пожалуйста, обратитесь к разделу руководства для получения подробной информации о том, что поддерживается. Возвращает идентификатор, используемый для ссылки на этот скелет. Параметр atlas image еще не поддерживается и должен быть равен 0, изображения будут загружаться по путям, указанным в файле Spriter JSON. Вы можете использовать значение масштаба, чтобы изменить размер спрайтов и костей в соответствии с выбранным вами разрешением. Значение 1 не изменит размеров, значение 2 сделает все в два раза больше, значение 0,5 уменьшит размер вдвое, и так далее.
UINT agk::LoadSkeleton2DFromSpriterFile( const char* filename, float scale, UINT atlasImage )
void agk::LoadSkeleton2DFromSpriterFile( UINT iSkeleton, const char* filename, float scale, UINT atlasImage )
filename - Имя файла, который нужно загрузить, должно быть таким .экспорт json из позвоночника
scale - Сумма для масштабирования размеров объекта
atlasImage - зарезервировано, должно быть 0
iSkeleton - ID для использования для этого скелета
Загружает анимацию позвоночника, экспортированную в формате JSON. Пожалуйста, обратитесь к разделу руководства для получения подробной информации о том, что поддерживается. Возвращает идентификатор, используемый для ссылки на этот скелет. Сначала вы должны загрузить изображение атласа, экспортированное Spine, в изображение AGK с помощью команды normal LoadImage и передать его в эту функцию. Вы также можете загрузить анимацию или просто спрайты и кости и переместить или изменить их вручную. Вы можете использовать значение масштаба, чтобы изменить размер спрайтов и костей в соответствии с выбранным вами разрешением. Значение 1 не изменит размеров, значение 2 сделает все в два раза больше, значение 0,5 уменьшит размер вдвое, и так далее.
UINT agk::LoadSkeleton2DFromSpineFile( const char* filename, float scale, UINT atlasImage, int loadAnim )
void agk::LoadSkeleton2DFromSpineFile( UINT iSkeleton, const char* filename, float scale, UINT atlasImage, int loadAnim )
filename - Имя файла, который нужно загрузить, должно быть таким .экспорт json из позвоночника
scale - Сумма для масштабирования размеров объекта
atlasImage - Идентификатор изображения атласа, содержащего все изображения
loadAnim - 1 для загрузки анимации, 0 для загрузки только спрайтов и костей
iSkeleton - ID для использования для этого скелета
Получает Y-положение корня скелета, не изменяется во время анимации.
float agk::GetSkeleton2DY( UINT iSkeleton )
iSkeleton - Идентификатор скелета для проверки
Получает положение X корня скелета, не изменяется во время анимации.
float agk::GetSkeleton2DX( UINT iSkeleton )
iSkeleton - Идентификатор скелета для проверки
возвращает 1, если скелет переходит в анимационный кадр.
int agk::GetSkeleton2DIsTweening( UINT iSkeleton )
iSkeleton - Идентификатор скелета для проверки
возвращает 1, если скелет анимируется или переходит в первый кадр воспроизводимой анимации
int agk::GetSkeleton2DIsAnimating( UINT iSkeleton )
iSkeleton - Идентификатор скелета для проверки
Возвращает 1, если скелет существует с указанным идентификатором, в противном случае 0.
int agk::GetSkeleton2DExists( UINT iSkeleton )
iSkeleton - Идентификатор скелета для проверки
Получает текущую глубину скелета. Это находится в диапазоне 0-10000. 0 находится сверху, 10000 - сзади
int agk::GetSkeleton2DDepth(UINT iSkeleton)
iSkeleton - Идентификатор скелета для проверки
Получить текущее время текущей воспроизводимой анимации в секундах
float agk::GetSkeleton2DCurrentTime( UINT iSkeleton )
iSkeleton - Идентификатор скелета для проверки
Возвращает исходное положение Y указанной кости, также известное как установочная поза. Это значение не изменится, пока кость анимируется, вместо этого анимация строится поверх установочной позы, чтобы создать положение кости, видимое на экране. Если кость не существует, она вернет 0. Идентификаторы костей начинаются с 0.
float agk::GetSkeleton2DBoneY( UINT iSkeleton, int bone )
iSkeleton - Идентификатор скелета для проверки
bone - Идентификатор кости для проверки
Возвращает исходное положение X указанной кости, также известное как установочная поза. Это значение не изменится, пока кость анимируется, вместо этого анимация строится поверх установочной позы, чтобы создать положение кости, видимое на экране. Если кость не существует, она вернет 0. Идентификаторы костей начинаются с 0.
float agk::GetSkeleton2DBoneX( UINT iSkeleton, int bone )
iSkeleton - Идентификатор скелета для проверки
bone - Идентификатор кости для проверки
Возвращает идентификатор родителя указанной кости. Если кость не существует или у нее нет родителя, она вернет -1. Индексы начинаются с 0.
int agk::GetSkeleton2DBoneParent( UINT iSkeleton, int bone )
iSkeleton - Идентификатор скелета для проверки
bone - Идентификатор кости для проверки
Возвращает текущее положение Y указанной кости в ее текущем анимированном положении. Это значение будет меняться во время анимации кости. Если кость не существует, она вернет 0. Идентификаторы костей начинаются с 0.
float agk::GetSkeleton2DBoneCurrY( UINT iSkeleton, int bone )
iSkeleton - Идентификатор скелета для проверки
bone - Идентификатор кости для проверки
Возвращает текущий угол указанной кости в ее текущем анимированном положении. Это значение будет меняться во время анимации кости. Если кость не существует, она вернет 0. Идентификаторы костей начинаются с 0.
float agk::GetSkeleton2DBoneCurrAngle( UINT iSkeleton, int bone )
iSkeleton - Идентификатор скелета для проверки
bone - Идентификатор кости для проверки
Возвращает идентификатор указанной кости для этого скелета. Если кости с заданным именем не существует, она вернет -1. Индекс 0-это допустимая кость.
int agk::GetSkeleton2DBone( UINT iSkeleton, const char* name )
iSkeleton - Идентификатор скелета для проверки
name - Имя кости, которую нужно найти
получить общее время именованной анимации
float agk::GetSkeleton2DAnimationTime( UINT iSkeleton, const char* anim )
iSkeleton - Идентификатор скелета для проверки
anim - Имя анимации для проверки
Получает угол наклона корня скелета, не меняется во время анимации.
float agk::GetSkeleton2DAngle( UINT iSkeleton )
iSkeleton - Идентификатор скелета для проверки
Возвращает текущее положение X указанной кости в ее текущем анимированном положении. Это значение будет меняться во время анимации кости. Если кость не существует, она вернет 0. Идентификаторы костей начинаются с 0.
float agk::GetSkeleton2DBoneCurrX( UINT iSkeleton, int bone )
iSkeleton - Идентификатор скелета для проверки
bone - Идентификатор кости для проверки
Возвращает исходный угол указанной кости, также известный как установочная поза. Это значение не изменится, пока кость анимируется, вместо этого анимация строится поверх установочной позы, чтобы создать вращение кости, видимое на экране. Если кость не существует, она вернет 0. Идентификаторы костей начинаются с 0.
float agk::GetSkeleton2DBoneAngle( UINT iSkeleton, int bone )
iSkeleton - Идентификатор скелета для проверки
bone - Идентификатор кости для проверки
Фиксирует указанный скелет на экране так, чтобы он не был затронут SetViewOffset
void agk::FixSkeleton2DToScreen( UINT iSkeleton, int mode )
iSkeleton - Идентификатор скелета для изменения
mode - 1 для фиксации на экране, 0 для нормального поведения (по умолчанию)
Прикрепляет указанный спрайт к заданному идентификатору скелета и кости. Идентификатор кости можно найти с помощью команды GetSkeleton2DBone. Когда спрайт прикреплен к кости скелета, его положение и вращение становятся относительно положения кости. Например, если положение спрайта равно 0,0, то он будет нарисован в том же положении, что и кость, но если положение равно 0,10, то спрайт будет нарисован над костью относительно кости, то есть если кость повернута влево на 90 градусов, то выше кости будет находиться слева от экрана в мировых координатах. ZOrder может быть задан для рисования спрайта между двумя существующими спрайтами скелета, любое целочисленное значение является допустимым и соответствует текущему порядку спрайтов в скелете. Например, Z-порядок 0 всегда будет рисовать перед первым спрайтом в Z-порядке скелета, значение 1 всегда будет рисовать перед вторым спрайтом в скелете и так далее. Обратите внимание, что на это не влияют другие спрайты, которые вы прикрепили к скелету, он учитывает только те спрайты, которые изначально были загружены вместе со скелетом. Например, если вы прикрепили к скелету два новых спрайта с z-порядком, равным 1, то они оба будут нарисованы между первым и вторым спрайтами в исходном скелете. Любые спрайты, прикрепленные к скелету с использованием одного и того же значения zorder, будут нарисованы в том порядке, в котором они были прикреплены. Пока этот спрайт прикреплен к скелету, он будет удален из обычных процедур рисования и нарисован только тогда, когда скелет виден. Вы все еще можете заставить спрайт рисовать, вызвав DrawSprite, но он не будет упорядочен с другими спрайтами в скелете. Чтобы отделить спрайт от скелета, вызовите эту команду с 0 в качестве skeletonID, параметры bone ID и zorder в этом случае не имеют значения.
void agk::FixSpriteToSkeleton2D( UINT spriteID, UINT iSkeletonID, int bone, int zorder )
spriteID - Идентификатор спрайта для прикрепления
iSkeletonID - Идентификатор скелета, к которому нужно прикрепиться
bone - Идентификатор кости в скелете, к которой нужно прикрепиться
zorder - ZOrder для размещения нового спрайта в порядке рисования скелета
Удаляет скелет с указанным идентификатором. Если в этом идентификаторе нет скелета, то ничего не происходит.
void agk::DeleteSkeleton2D( UINT iSkeleton )
iSkeleton - Идентификатор скелета для удаления
Создает 2D-скелет, который можно использовать для анимации спрайтов с помощью костей. В настоящее время эта команда не очень полезна, так как существует не так много команд для настройки скелета. Вместо этого скелеты должны быть загружены с помощью LoadSkeleton2DFromSpineFile
UINT agk::CreateSkeleton2D()
void agk::CreateSkeleton2D( UINT iSkeleton )
iSkeleton - Идентификатор, используемый для ссылки на этот скелет