Cocos2d-iPhone,1.0.1。
我的游戏有地图。我有一个包含NSValues
(CGRects
)的数组,它基本上代表了地图中的碰撞。无论如何,我需要的是从字面上创建一个几乎是灰色背景的纹理,黑色填充矩形代表我的rects,然后我将使用这个纹理来创建我的小地图。
无论如何,问题是纹理创建部分。我想知道这一点,因为创建CCSprites
来表示我的矩形有点不可能(每个地图数百个!)。我还考虑用CCDrawLine
之类的东西来绘制原语,但我对此并不十分肯定。
你推荐什么?你会如何创建纹理?
答案 0 :(得分:0)
对我来说听起来像tile-based game。
答案 1 :(得分:0)
创建小地图意味着创建您用于表示游戏世界的任何地图的缩小版本。
可能有效的一种方法是缩小地图图层(CCTMXTiledMap?),使其符合小地图的大小。然后将其渲染到CCRenderTexture上。这可能非常耗时,因此最好不要每帧更新小地图渲染纹理。
或者循环遍历tilemap,并且对于每个tile,使用基于tile类型(草,山,水等)的给定颜色,将适当位置处的单个像素渲染到渲染纹理上。如果产生的小地图太大或太小,请放置2x2像素或更多像素,或缩小渲染。