您好我想开发像'涂鸦跳'这样的游戏。但我有以下功能的问题 -
1.如何移动背景场景/图像。
2.如何检测物体之间的碰撞。它需要像box2d这样的物理引擎,或者我应该只使用手动碰撞。
3.应该是背景图像的大小。
4.实际上我不知道背景如何移动。所以我需要某人的解释。
答案 0 :(得分:4)
背景运动 A)你可以创建一个TMX Tilemap然后制作一个非常高的Tiled-Map。 B)您可以创建一个纹理然后循环纹理坐标而不是真正移动它。
手动检测。 Best通过“Point in Boundingbox”或“Rect in Rect”检测它。 有关更多详细信息,请访问我的博客文章,了解与cocos2d的碰撞检测:http://www.anima-entertainment.de/?p=262
图像的大小 请记住,纹理在内存中总是处于2的幂。如果你想在视网膜上创建一个背景图像高分辨率(960x640像素)在内存中将是1024x1024的纹理。如果可能,请使用较小的背景图像并拉伸它们。 (比如512x512)。但我真的建议大型滚动图像TMX支持。
CCTMXTiledMap * tmxNode = [CCTMXTiledMap tiledMapWithGMXFile:@"Level.tmx"];
// lets say you want to move it 50 pixels down in 1 second :
[tmxNode runAction:[CCMoveBy actionWithDuration:1.0 position:ccp(0,-50)];
答案 1 :(得分:0)
在cocos2d的文件夹中,您可以获得许多tilemap演示。 TileMapTest.h TileMapTest.m
答案 2 :(得分:0)
参考本教程,这将对您有所帮助。
http://www.raywenderlich.com/2343/how-to-drag-and-drop-sprites-with-cocos2d
这是使用平移识别器的屏幕移动