Read this manual in English

Компонент Spine Model

Компонент Spine Model используется для оживления скелетной Spine-анимации.

Создание Spine-модели

Выделите игровой объект для размещения в нем нового компонента:

  • Либо создайте компонент на месте (кликните ПКМ на игровом объекте и выберите Add Component ▸ Spine Model).

  • Либо сперва создайте его в файле (кликните ПКМ в подходящем расположении в браузере Assets, затем выберите New... ▸ Spine Model из контекстного меню), после чего добавьте этот файл к игровому объекту, кликнув ПКМ по игровому объекту и выбрав Add Component File).

Свойства Spine-модели

Помимо свойств Id, Position и Rotation существуют следующие специфичные для компонента свойства:

Spine scene
Укажите в этом свойстве файл Spine Scene, созданный раннее.
Blend Mode
Если необходимо использовать режим наложения, отличный от стандартного Alpha, измените это свойство.
Material
Если необходимо визуализировать модель с пользовательским материалом, измените это свойство.
Default animation
Укажите в этом свойстве анимацию в качестве стартовой для этой модели.
Skin
Если модель имеет скины, выберите один в качестве стартового.

Теперь Spine-модель можно просматривать в редакторе:

Spine model in editor

Режимы наложения

Свойство Blend Mode определяет, как графика компонента должна смешиваться с графикой, расположенной позади. Ниже представлены доступные режимы наложения и способы их вычисления:

Alpha
Нормальное смешивание: src.a * src.rgb + (1 - src.a) * dst.rgb
Add
Осветляет фон цветовыми значениями соответствующих пикселей компонента: src.rgb + dst.rgb
Multiply
Затемняет фон значениями соответствующих пикселей компонента: src.rgb * dst.rgb

Манипулирование при выполнении

Манипулировать Spine-моделями во время выполнения можно с помощью ряда различных функций и свойств (обращайтесь к документации по API).

Анимация во время выполнения

Defold предоставляет мощную поддержку для управления анимацией во время выполнения. За подробностями обращайтесь к руководству по анимации Spine-моделей.

Изменение свойств

Spine-модель также имеет ряд различных свойств, которыми можно манипулировать с помощью go.get() и go.set():

animation
Текущая анимация модели (hash, только для чтения). Анимация изменяется с помощью spine.play_anim() (см. руководство по Spine-анимации).
cursor
Нормализованный курсор анимации (number).
material
Материал Spine-модели (hash). Это свойство можно изменить с помощью свойства ресурса Material и go.set(). За примером обращайтесь к справочнику по API.
playback_rate
Скорость воспроизведения анимации (number).
skin
Текущий скин компонента (hash).

Константы материала

The default spine material has the following constants that can be changed using go.set() or go.animate() (refer to the Material manual for more details). Examples:

go.set("#spine", "tint", vmath.vector4(1,0,0,1))
go.animate("#spine", "tint", go.PLAYBACK_LOOP_PINGPONG, vmath.vector4(1,0,0,1), go.EASING_LINEAR, 2)
tint
Цветовой оттенок Spine-модели (vector4). Для представления оттенка с компонентами x, y, z и w, соответствующими красному, зеленому, синему и альфа оттенкам, используется тип vector4.

Конфигурация проекта

В файле game.project имеются несколько настроек проекта, относящихся к Spine-моделям.