因为到目前为止我都是在iOS模拟器中测试,但即便如此,也觉得按住手臂旋转时,手臂转动起来比较费劲,很难停止在玩家期望的位置上.因为手臂完全通过物理引擎的计算来移动,它有自身的惯性影响,所以很难控制.
如果这就是我们想要的效果:增加瞄准的控制难度,那么恭喜你,成功了.
但在这里我们能不能将手臂的控制感做的更精确,更舒服一些呢?
让我们换一种思路,不用物理引擎来移动物体,而通过代码来移动,这样可以完全忽略物理引擎的多余”附加效果”,做到收放自如.
为了不改变现有的机器人对象,我们创建一个新的符合该行为的新机器人对象.该机器人的类还是Robot,只不过手臂的类变成ArmStaic.
在SpriteBuilder的Sprites文件夹中新建RobotStatic.ccb文件,类型为Node.和Robot.ccb处理过程类似.分别拖动Body和Arm对象到其根节点.
区别在于以下几点:
1.arm自定义类为ArmStatic而不是Arm
2.arm是静态物理对象而不是动态对象
3.不需要添加物理关节链接手臂
SpriteBuilder的操作基本完成了,下一篇我们将回到Xcode去完成对应的控制代码,see you ;)
时间: 2024-10-27 12:01:58