我想以平滑的方式移动一个精灵周围的CCTMXMap。我已经想出了如何(使用CCActions)从瓷砖移动到瓷砖,但我在动画中留下了空白(它暂停了一帧,而它重新评估走向的方向)。我尝试在预定的更新中移动角色:方法,但是当您试图限制精灵只从平铺移动到平铺时会变得杂乱。有关如何获得干净,一致的动画,而不使用更新凌乱的手动动画的任何建议?Cocos 2D - 在平铺地图上移动精灵
0
A
回答
1
是的,请勿使用操作。使用CCActions时,您总会遇到1帧延迟问题。
在更新中移动精灵非常简单。尤其是如果你限制运动速度(每帧点数),这个速度可以被瓦片大小清楚地划分。例如,如果你的瓷砖是40x30,那么水平速度1,2,4,8,10就可以正常工作。垂直1,2,3,5,6,10将工作。
更新通过这个号码的位置,投下来为int,它与目标位置比较:
if ((int)currentPos.x == (int)targetPos.x && (int)currentPos.y == (int)targetPos.y)
{
NSLog(@"I'm there!");
}
原因铸造为int是为了避免浮点值的舍入误差。
另一种解决方案是 - 特别是如果你的角色一次只能朝一个方向移动 - 找出他需要到达那里的帧数。如果角色必须向右移动40个点,并且他每帧移动4个点,则需要10个帧。然后只计算帧的数量(更新方法运行的次数),如果它达到10(或者如果你倒数计数为0),那么你就知道角色已经到达了,而不需要检查他的位置。
相关问题
- 1. 在cocos上做精灵跳2d
- 2. Cocos2d平铺地图添加精灵
- 3. 平铺2d地图指南
- 4. 平铺移动平铺
- 5. 在XNA中向上弯曲的弧形移动2D精灵?
- 6. 如何伪造在Z轴上移动的2D精灵?
- 7. 当绘制精灵时Cocos 2D大FPS下降
- 8. 2D精灵上的Direct3D 3D图形
- 9. 在滑动方向上移动精灵
- 10. iphone 2d精灵
- 11. 平铺地图
- 12. libgdx,水平移动精灵列表
- 13. Android libgdx ...水平来回移动精灵
- 14. 如何让精灵坐在移动的精灵上
- 15. 如何在Android上创建图片精灵(不是动画2d)?
- 16. 在角色精灵上覆盖2d武器精灵?
- 17. 如何让精灵在pygame的平台上来回移动?
- 18. 2D地图上的块碰撞问题平铺java
- 19. 在瓷砖地图上绘制精灵
- 20. 显示网页导航的平铺精灵图像
- 21. 背景重复平铺bgImage精灵图像内?
- 22. 在cocos2d的路径上移动精灵
- 23. 在角度方向上移动精灵
- 24. AndEngine精灵正在移动
- 25. 希望在将精灵移动到某个点时平稳地降低旋转速度
- 26. 在Android上平铺地图叠加层
- 27. 图片精灵动画鼠标移动
- 28. LibGDX:从平铺到平铺渲染平铺地图
- 29. 玩家精灵不会在Java 2D游戏中移动(重绘)
- 30. 2D精灵面对它在Pygame中移动的方向