cocos creator学习10——骨骼动画

骨骼动画组件

组件属性列表

sp.Skeleton控制面板属性
Skeleton Data骨骼的控制文件.json文件
Default Skin默认皮肤
Animation正在播放的动画
Loop是否循环播放
Premuliplied Alpha是否使用贴图预乘
TimeScale播放动画的时间比例系数
Debug Slots是否显示 Slots的调试信息
Debug Bone是否显示Bone的调试信息

骨骼动画组件方法


常用方法功能
clearTrack(trackIndex)清理对应Track的动画
clearTracks()清除所有 track 的动画状态
setAnimation(trackIndex,“anim_name”,is_loop)清除管道所有动画后,再重新播放
addAnimation(trackIndex,“anim_name”,is_loop)往管道里面添加一个动画

使用示例

通过按钮实现播放不同骨骼动画
骨骼动画播放

实现代码:


 onLoad () {
        var spine = this.node.getChildByName("JXM");
        var ske = spine.getComponent(sp.Skeleton);
        this.ske = ske;
    },

    start () {

    },

    enterclick:function(){
        this.ske.clearTracks();//清理所有播放队列的动画
	    this.ske.setAnimation(0,"in",false);  //in是在Animation的属性列表中的一个
        this.ske.addAnimation(0,"idle_1",true);
    },
    enterclick1:function(){
        this.ske.clearTracks();//清理所有播放队列的动画
        this.ske.setAnimation(0,"err_1",false);
        this.ske.addAnimation(0,"idle_1",true);
    },
    enterclick2:function(){
        this.ske.clearTracks();//清理所有播放队列的动画
        this.ske.setAnimation(0,"ok_1",false);
        this.ske.addAnimation(0,"idle_1",true);
    },

setAnimation()会自动清理管道
addAnimation() 不会清理管道
setAnimation()替换成addAnimation() 运行效果

    onLoad () {
        var spine = this.node.getChildByName("JXM");
        var ske = spine.getComponent(sp.Skeleton);
        this.ske = ske;
    },

    start () {

    },

    enterclick:function(){
        this.ske.clearTracks();//清理所有播放队列的动画
        this.ske.setAnimation(0,"in",false);
        this.ske.addAnimation(0,"idle_1",true);
    },
    enterclick1:function(){
   //     this.ske.clearTracks();//清理所有播放队列的动画
//     this.ske.setAnimation(0,"err_1",false);
	   this.ske.addAnimation(0,"err_1",false); // setAnimation改成addAnimation
        this.ske.addAnimation(0,"idle_1",true);
    },
    enterclick2:function(){
    //    this.ske.clearTracks();//清理所有播放队列的动画
        this.ske.setAnimation(0,"ok_1",false);
        this.ske.addAnimation(0,"idle_1",true);
    },
    // update (dt) {},
});

运行效果
可以看出如果直接addAnimation() 它会在其他骨骼动画播放完后才开始播放它对应的骨骼动画

骨骼动画事件监听

监听方法触发条件
setStartListener(listener)用来设置开始播放动画的事件监听
setEndListener(listener)用来设置动画播放完后的事件监听
setCompleteListener(listener)用来设置动画播放一次循环结束后的事件监听
 start () {
        this.ske.setAnimationListener(function(){
            cc.log("动画开始播放的事件");
        });
        this.ske.setEndListener(function(){
            cc.log("setEnd");
        });
        this.ske.setCompleteListener(function(){
            cc.log("play_once");
        });
    },

监听效果

  • 2
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
### 回答1: 很高兴为您回答!Cocos Creator是一款基于Cocos2d-x框架的游戏开发工具,提供了一个友好的图形化界面和丰富的功能,方便开发者快速制作游戏。 如果您想学习Cocos Creator,以下是一些学习资源: 1. 官方文档:Cocos Creator官方网站提供了详细的开发文档和教程,是学习的第一步。 2. 视频教程:您可以在YouTube或者Bilibili上搜索Cocos Creator视频教程,从中学到更多实用的技巧。 3. 开源项目:GitHub上有许多Cocos Creator开源项目,您可以通过阅读代码来加深对Cocos Creator的理解。 4. 论坛和社区:Cocos官方论坛和社区是您寻求帮助和交流的好地方。 希望这些资源能帮助您快速学习Cocos Creator,开发出更多精彩的游戏。 ### 回答2: Cocos Creator是一款面向游戏开发者的跨平台游戏引擎,它具有易用性、高效性、灵活性和扩展性的特点,因此备受开发者青睐。学习Cocos Creator的教程将帮助您深入了解引擎的功能和使用方法。 首先,您可以通过官方网站或在线社区获得Cocos Creator学习教程。官方网站上提供了大量的教程和文档,包括入门教程、项目案例和API文档等。这些教程以简明的语言和丰富的示例代码,帮助开发者逐步了解Cocos Creator的各个模块,如场景编辑、粒子系统、动画和物理系统等。 此外,Cocos Creator的在线社区也是学习的宝贵资源之一。社区中有众多开发者分享自己的心得和经验,您可以在其中提问、参与讨论,从中获取解决问题的方法和学习的灵感。 除了官方提供的教程和社区资源,您还可以参考一些优秀的第三方教程。这些教程可能以书籍、视频教程或博客的形式存在,通过借鉴他人的经验,您可以更加深入地了解Cocos Creator的使用技巧和开发实践。 最后,除了学习教程,实践也是学习Cocos Creator的重要一环。通过自己亲自动手完成一些小项目或实验,您可以更好地理解和掌握引擎的各个功能。在实践中遇到问题时,可以利用教程和社区资源进行查找和求助,以加深对Cocos Creator的理解。 总之,通过官方教程、社区资源以及第三方教程的学习,结合自己的实践经验,您将能够逐步提高自己的Cocos Creator开发技能,实现更加出色的游戏开发成果。 ### 回答3: Cocos Creator是一款面向游戏开发的跨平台开发工具,学习教程涵盖了从入门到进阶的内容,可以帮助开发者快速掌握该工具的使用。 首先,Cocos Creator学习教程介绍了该工具的基本概念和操作界面,帮助用户熟悉工具的各个模块和功能。教程会详细介绍如何创建项目、导入资源、设计场景等基础操作,让开发者对Cocos Creator有一个全面的了解。 其次,教程会介绍如何利用Cocos Creator进行游戏的开发。开发者可以学习到如何创建游戏对象、添加组件、编写脚本等内容,通过实践项目,了解游戏开发的整个流程。教程还会介绍如何添加动画效果、碰撞检测、物理模拟等高级功能,让游戏更加生动和有趣。 除了游戏开发,Cocos Creator还支持跨平台的应用开发。教程会介绍如何使用Cocos Creator进行应用的开发,包括UI设计、用户交互、数据存储等方面的内容。开发者可以学习到如何调用原生平台的API,实现更多功能和扩展。 最后,教程会提供一些实战案例供开发者参考,让他们可以更好地理解和应用所学知识。此外,Cocos Creator官方还提供了丰富的在线文档和社区支持,开发者可以通过官方网站和论坛获取更多资料和帮助。 总之,通过Cocos Creator学习教程,开发者可以系统地学习该工具的使用方法,并掌握游戏开发和应用开发的基本技能。无论是初学者还是有一定经验的开发者,都可以从中受益,提升自己的开发能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值