(NO.00002)iOS游戏精灵战争雏形(四)
2015-11-01 12:56
323 查看
在Xcode打开MainScene,添加初始化代码如下:
我们在MainScene场景的初始化中打开物理调试,移动精灵对象,注意我们故意把障碍物放在移动路线上,看看精灵遇到障碍物有什么样的反应.
编译运行App,我们看到精灵在遇到障碍物时会贴着障碍物的边移动.另外我们发现精灵的边缘有一部分嵌入到障碍物的边缘之中,这是怎么回事呢?
原来我们是通过Move动作来移动精灵,跳过了Chipmunk物理引擎的step调整.所以精灵和障碍物物理对象之间会有”反常”的情况出现.一般若想物理对象表现出正常的物理行为,我们需要用物理引擎提供的方法移动该对象,比如作用在其上一个力,或者直接给其一个冲力,再或者给它一个角度的变化等.
但是在这里为了简单,我们就用Move动作移动物体.
后面用手指按住移动物体时还能看到精灵竟然直接轻松穿过了障碍物,不要觉得惊讶,原因上面已经分析过了.
-(void)didLoadFromCCB{ NSAssert(_sprite1, @"_sprite1 must not nil"); _physics.debugDraw = YES; _sprite1.position = ccp(0.4,0.3); CCActionMoveTo *move = [CCActionMoveTo actionWithDuration:5 position:ccp(0.8, 0.8)]; [_sprite1 runAction:move]; _viewSize = [CCDirector sharedDirector].viewSize; }
我们在MainScene场景的初始化中打开物理调试,移动精灵对象,注意我们故意把障碍物放在移动路线上,看看精灵遇到障碍物有什么样的反应.
编译运行App,我们看到精灵在遇到障碍物时会贴着障碍物的边移动.另外我们发现精灵的边缘有一部分嵌入到障碍物的边缘之中,这是怎么回事呢?
原来我们是通过Move动作来移动精灵,跳过了Chipmunk物理引擎的step调整.所以精灵和障碍物物理对象之间会有”反常”的情况出现.一般若想物理对象表现出正常的物理行为,我们需要用物理引擎提供的方法移动该对象,比如作用在其上一个力,或者直接给其一个冲力,再或者给它一个角度的变化等.
但是在这里为了简单,我们就用Move动作移动物体.
后面用手指按住移动物体时还能看到精灵竟然直接轻松穿过了障碍物,不要觉得惊讶,原因上面已经分析过了.
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 我是运营,我没有假期
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- 每个 Linux 游戏玩家都绝不想要的恼人体验
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- 在 Fedora 上使用 Steam play 和 Proton 来玩 Windows 游戏
- Steam 让我们在 Linux 上玩 Windows 的游戏更加容易
- 如何使用 Steam Play 在 Linux 上玩仅限 Windows 的游戏
- 新一代iPad适配应用之游戏篇
- VB实现的《QQ美女找茬游戏》作弊器实例
- C#实现洗牌游戏实例
- C#实现的算24点游戏算法实例分析
- C#实现简单的井字游戏实例
- C++编写简单的打靶游戏
- C++实现基于控制台界面的吃豆子游戏
- 纯javascript实现的小游戏《Flappy Pig》实例