cocos creator 动画:缓动系统示例

news/2024/12/22 13:57:39/

cocos creator缓动系统

官方文档:在 Cocos Creator 中使用缓动系统(cc.tween)

  • 首先看一下效果

在这里插入图片描述

  • cocos中制作动效需要用到缓动系统,使用cc.tween并传入一个节点使其动起来。

  • 举例:

cc.tween(this.picNode).to(1, { scale: 2 }).start();
  • 传入的this.picNode就是需要动起来的节点

  • .to后面跟着的第一个数字为运动时长,单位为秒。

  • 时间后的大括号里包含节点的一些属性,当使用to时,则是“到达目标属性”;而当使用by时,则是“相对当前属性”。

  • toby的区别可以在moveBtn的示例中看出来。

  • 注意不要掉了.start(),没有会直接不执行。

  • 完整代码

其中picNode绑定的就是右侧的cocos 图标节点。
xxBtn就是该按钮的绑定事件,还是比较好理解的,在此就不过多解释。

const { ccclass, property } = cc._decorator;@ccclass
export default class TweenScene extends cc.Component {@property(cc.Node)picNode: cc.Node = null;protected onLoad(): void {this._resetPosition();}private scaleBtn() {this.picNode.stopAllActions();this._resetPosition();cc.tween(this.picNode).to(1, { scale: 2 }).start();}private moveBtn() {this.picNode.stopAllActions();this._resetPosition();cc.tween(this.picNode).to(1, { position: cc.v2(300, 0) }).by(1, { position: cc.v2(0, 50) }).start();}private rotateBtn() {this.picNode.stopAllActions();this._resetPosition();cc.tween(this.picNode).to(1, { angle: 180 }).start();}private _resetPosition() {this.picNode.scale = 1;this.picNode.setPosition(200, 0);this.picNode.angle = 0}private backBtn() {cc.director.loadScene("HelloScene")}
}
  • 要注意,cc.tween是异步的,即执行动画的同时,也会接着执行下面的代码,当有些代码需要在动画执行完毕后再执行时,需要用上.call()

  • 例如:

  • call()中传入一个函数,在执行完上面的动画后执行函数的内容。

这里需要注意this的指向~箭头函数不影响this指向,建议使用。

    private scaleBtn() {this.picNode.stopAllActions();this._resetPosition();cc.tween(this.picNode).to(1, { scale: 2 }).call(() => {this.picNode.scale = 0.5;}).start();}

在这里插入图片描述


http://www.ppmy.cn/news/607240.html

相关文章

Python xrange() 函数

描述 xrange() 函数用法与 range 完全相同,所不同的是生成的不是一个数组,而是一个生成器。 语法 xrange 语法: xrange(stop) xrange(start, stop[, step])(stop) xrange(start, stop[, step]) 参数说明: start: 计数从 start 开始…

大数据ClickHouse(十四):Integration系列表引擎

文章目录 Integration系列表引擎 一、HDFS 二、MySQL

VsCode允许JSON文件注释

打开设置面板 输入Files: Associations搜索出此项 在此处添加项: 项 *.json值 jsonc然后你的JSON文件注释就不报错了~

传统编译原理

传统编译原理 计算机程序编译原理,把程序员员容易理解的高级语言程序代码流,翻译成计算机可执行的机器指令代码流。可以使用“一断、二比、三译”形象说明实质。 1、断。按照语言的语法规则扫描断词,结合文法词典,把程序字符串流&…

算法精解:DAG有向无环图

DAG是公认的下一代区块链的标志。本文从算法基础去研究分析DAG算法,以及它是如何运用到区块链中,解决了当前区块链的哪些问题。 关键字:DAG,有向无环图,算法,背包,深度优先搜索,栈&a…

大数据必学Java基础(五十二):集合的深入了解

文章目录 集合的深入了解 一、集合的引入 二、简要集合结构图 三、集合应用场合

OpenArkCompiler方舟编译

OpenArkCompiler方舟编译 概述 面向多设备、支持多语言的统一编程平台。 OpenArkCompiler是来自华为方舟编译器的开源项目。 OpenArkCompiler 四个技术特点 能够将不同语言代码编译成一套可执行文件,在运行环境中高效执行: 支持多语言联合优化、消除跨语…

叉乘、向量积的计算以及推导

叉乘 几何图示: 设有 a(ax,ay,az),b(bx,by,bz)\mathbf{a}\left(a_{x}, a_{y}, a_{z}\right), \mathbf{b}\left(b_{x}, b_{y}, b_{z}\right) a(ax​,ay​,az​),b(bx​,by​,bz​) i,j,k分别是X,Y,Z轴方向的单位向量…