美文网首页
outline-导出动画

outline-导出动画

作者: 左卫门_6e62 | 来源:发表于2018-04-09 17:08 被阅读0次

    使用AnimationRecorder

    安装了outline后,在creator资源面板中将会出现一个outline-components目录。该目录下有两个个文件,如下图:

    outline-components中的两个脚本
    • 要为某个节点录制动画时,首先用creator自带的Animation组件将动画剪辑编辑好,接着将AnimationRecorder直接拖至这个节点的面板中,拖放结果如下图:
      AnimationRecorder

    AnimationRecorder组件在属性面板上基本与Animation组件一致,并且理论上可以替代后者。不过可能是cocos creator的bug,动画编辑器必须要在选中的节点上添加Animation组件才能启动。因此最好先用Animation组件将动画剪辑编辑好,然后再用AnimationRecorder导出。

    • 上图中的Clips属性用来设置需要导出的动画剪辑,将剪辑引用到Clips的0索引即可,注意AnimationRecorder每次运行只能导出一个动画剪辑,所以多设剪辑是不会导出的
    • 上图中的Namespace属性用来设置导出动画对象所挂载全局表的表名,它的概念与ExportRule中的Namespace属性一致
    • 上图中的needRecord属性用来标记运行时这个AnimationRecorder实例需不需要导出动画,当需要导出时,将它设为true
    • 上图中的dstPath属性用来标记导出文件的路径和文件名

    创作动画

    创作动画的过程和正常在creator上创作动画并无二样,需要注意的是,目前只支持针对节点基本属性的动画,如坐标、缩放、颜色、精灵帧等,虽然creator还支持很多控件属性,但是后者并不实用
    坐标曲线动画以及时间曲线都是支持的

    导出动画

    动画编辑并保存好,设置好AnimationRecorder组件,将creator项目在浏览器中运行,即可导出动画文件。

    使用动画

    • 导入依赖
      可以参考《outline-导出节点》一文中的导出有依赖文件部分
    • 导入动画文件
      把out目录中的导出的动画lua文件复制到项目的合适位置,需要用到的时候require即可。例如:
      require("creator.clips.clip_jump")
    • 播放动画
      假如AnimationRecorder中Namespace设为Anims,要播放的动画剪辑名为clip_jump,那么可以通过如下代码创建一个动画实例:
      local anim=Anims.Clip_jump:create()
      假如需要播放动画的节点为sheep,那么如下代码将会开始播放动画:
      anim:play(sheep)

    动画接口

    下文中,Anim表示某个动画实例。

    • Anim:play(Node node,bool loop,function callback,string key)
      开始播放动画。参数node为执行动画的节点,需要注意的是,当node的子节点也参与动画时,方法内部将会通过创建动画时在creator编辑器中的节点层级关系和节点名来寻找相关的子节点。loop为是否会循环播放动画。callback为一次动画播放完后的回调。key为动画标志,如果设置了,将会作为参数传给回调函数。
    • Anim:pause()
      暂停动画
    • Anim:resume()
      被暂停后恢复播放
    • Anim:stop()
      停止动画并释放动画实例

    相关文章

      网友评论

          本文标题:outline-导出动画

          本文链接:https://www.haomeiwen.com/subject/wfeihftx.html