加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

objective-c – SpriteKit自定义SKAction =弹跳?

发布时间:2020-12-16 03:40:53 所属栏目:百科 来源:网络整理
导读:寻求有关如何创建执行弹跳的自定义SKAction(精灵套件)的帮助? 基本上,想要从顶部屏幕到底部(Y轴)放下一个精灵,并让它执行快速衰减反弹(仅在Y轴上下). 注意:不想使用物理引擎. 我在网上查看了一些补间示例(在C中),但数学使我的眼球釉面和启动,不清楚我是如
寻求有关如何创建执行弹跳的自定义SKAction(精灵套件)的帮助?

基本上,想要从顶部屏幕到底部(Y轴)放下一个精灵,并让它执行快速衰减反弹(仅在Y轴上下).

注意:不想使用物理引擎.

我在网上查看了一些补间示例(在C中),但数学使我的眼球釉面和启动,不清楚我是如何整合这些功能的.我还尝试使用moveTo和moveBy进行SKAction测序,但效果不是那么顺利.

解决方法

您可以组合多个SKActions来实现效果.
CGFloat bounceFactor = 0.2f;
SKAction* dropAction = [SKAction moveByX:0 y:-dropHeight duration:0.3f];
SKAction* bounce = [SKAction sequence:@[[SKAction moveByX:0 y:dropHeight*bounceFactor duration:0.1f],[SKAction moveByX:0 y:-dropHeigh*bounceFactor duration:0.1f],[SKAction moveByX:0 y:dropHeight*bounceFactor/2 duration:0.1f],[SKAction moveByX:0 y:-dropHeight*bounceFactor/2 duration:0.1f]]];

[node runAction:[SKAction group:@[dropAction,bounce]]];

此外,你可以玩约SKActionTimingMode,使弹跳看起来逼真.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读