明白是明白,只是感觉很多地方很奇怪。应用的场景应该多为开放式游戏地图跑路一类的需求吧?但是地图应该会有一些路线设计然后移动应该也不是用tween吧?
还有种情况我觉得就是类似农药这种了,但是也不是用tween来表现动作的吧?
个人觉得,tween的动作应该是表现为动画确定的地方,这时起点、终点、时长都是已知确定的,如果需要考虑不定的因素,自己封装update来刷新要更灵活一点吧?
update在app切换后台时候也会暂停,总之整个世界都暂停了,写在update还不如进行监听返回前台和切到后台时候进行回调
tween是补间动画,什么叫补间动画知道吧,就是切换前台后台暂停动画,恢复动画,继续执行动画,这个叫做补间动画,但是其实很多时候我们需要的不是补间动画,甚至需要每一次切换前台时候需要进行整个世界的数据的同步,包括动画,所以非常麻烦,而tween并不能帮助我们减少任何的工作量,在我看来,在手机app时代,tween的功能非常的小儿科,也许unity的tween更加强大,而cocos在这方面非常的不足和鸡肋
从目前来看,tween的工作就是代替了以前的action,实际上也就是在action基础上做的封装,而你说的这种功能,从2dx时代就一直是这样,在我看来你说的这种需求不确定的东西太多,完全依赖引擎有点不现实,更多还是需要在切回的时候自己来处理的
这个真没必要
这确实是个路子。。。不过到这程度,违背了我们一开始决定的用creator 快速做出来的初衷。
为什么没有必要····
我觉得增加暂停和恢复很有必要,但是前后端切换这种就没什么意义了
好吧。。。。
大佬nb~
小白表示没看出什么。。。
cc.tween 在调用 start 时会将之前生成的 action 队列重新组合生成一个 cc.sequence 队列,而_finalAction就是这个队列返回的。动动手打印看看,需要的属性、函数都在里面。
var tween = cc.tween(this.node).by(4, {x: 10}).start();
//cc.log(tween._finalAction._duration); 动作总时长
//cc.log(tween._finalAction.getElapsed()); 动作已经播放时间
//tween._finalAction.step(0);
//tween._finalAction.step(2.5); 动画跳到2.5秒开始播放
膜拜,非常感谢
6p6p,大佬6p
大佬6666
谢谢大佬, 我们最后就用这个这个, 套了个函数。 官方没有 export js可以运行, ts 要报错。
适当的转一下any
能用就ok。以前cocos2dx的action用习惯了,前不久creator也遇到同样需求。就花点时间看看以前的用法有没有保留。
谢谢。
说实话, 一致觉得 typescript 了, 还 any。。。。
不过, 项目中避免不了, typescript 本身 也在不断的完善。
