zoukankan      html  css  js  c++  java
  • Spine学习四

    Spine事件特性:

    SpineEvent(string startsWith = "", string dataField = "", bool includeNone = true, bool fallbackToTextField = false)

    这个特性,可以让你在unity的inspetor中直接可以选取当前skeletonAnimation中的 event名字,效果如下:

    1 [SpineEvent(dataField: "skeletonAnimation", fallbackToTextField: true)]
    2 public string eventName;//指定一个事件名字

    这个特性修饰的话,可以更好的帮助我们绑定Spine 动画的事件,不会担心输入错字符串而找不到事件。

    Spine事件绑定:

    1.获取播放组件的引用

    2.初始化播放组件

    3.根据名字查找事件

    4.绑定事件回调函数

        Spine.EventData eventData;
    
            void Start () {
           //1.初始化播放组件 skeletonAnimation.Initialize(
    false); if (!skeletonAnimation.valid) return;
           //2.查找事件 eventData
    = skeletonAnimation.Skeleton.Data.FindEvent(eventName);
           //3.添加事件回调函数  skeletonAnimation.AnimationState.Event
    += HandleAnimationStateEvent; } private void HandleAnimationStateEvent (TrackEntry trackEntry, Event e) {

           //对比是否是该事件,这里推荐使用引用比较而不是字符串比较 bool eventMatch = (eventData == e.Data); // Performance recommendation: Match cached reference instead of string. if (eventMatch) { Play(); } }
  • 相关阅读:
    【python】raise_for_status()抛出requests.HTTPError错误
    【python】python打包生成的exe文件运行时提示缺少模块
    单点登录原理与简单实现
    Java并发之AQS详解
    Java更新
    各种java面经资源
    HashMap与HashTable的区别
    Http 与Https
    SpringMVC运行原理
    Spring
  • 原文地址:https://www.cnblogs.com/leiGameDesigner/p/9105308.html
Copyright © 2011-2022 走看看