用于绑定Animator类型的Spine模型

/*--------------------------------------------------------------------

  • Author Name: DXL
  • Creation Time: 6/11/2019 2:58:08 PM
  • File Describe: 挂载在Spine上面的脚本,用于物体跟随Spine移动
  • ------------------------------------------------------------------*/

using Spine;
using Spine.Unity;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class SpineFollow : MonoBehaviour
{
public int boneIndex; //要绑定跟随的骨骼
public GameObject follower; //跟随移动的物体
public bool isStop = false; //是否停止移动
public float offsetX = 0; //相对骨骼的绑点的X坐标偏移量
public float offsetY = 0; //相对骨骼的绑点的Y坐标偏移量

/*************************************************
 *这里的Spine使用的是SkeletonAnimator,如果不使用这种Spine,
 *   建议使用SkeletonGraphic的形式来绑定物体,更加的方便
 *************************************************/


Bone bone; //要绑定的骨骼
SkeletonAnimator sa;
void Start()
{
    sa = transform.GetComponent<SkeletonAnimator>();
}


void Update()
{
    if (follower && !isStop && follower.activeInHierarchy && sa != null)
    {
        if (boneIndex < 0 || boneIndex > sa.Skeleton.Bones.Items.Length)
        {
            return;
        }
        bone = sa.Skeleton.Bones.Items[boneIndex];
        follower.transform.localPosition = new Vector3(bone.WorldX + offsetX, bone.WorldY + offsetY, 0);
    }

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值