Cocos2d iphone Cocos2d";每层仅支持1个瓷砖组”;调整瓷砖地图集大小后

Cocos2d iphone Cocos2d";每层仅支持1个瓷砖组”;调整瓷砖地图集大小后,cocos2d-iphone,resize,tiles,assertion,atlas,Cocos2d Iphone,Resize,Tiles,Assertion,Atlas,我在iOS上使用CoCo2D v0.99.5。我将瓷砖地图集像素宽度/高度从256x512调整为256x1024。我在项目的tmx文件中相应地调整了瓷砖大小、宽度和高度属性。如果我在tile atlas中512以下的任何位置绘制tile,即使我在正确的层上绘制tile,我也会得到断言失败“每层仅支持1个tilset” 我知道它应该支持高达1024x1024像素或两倍于视网膜的瓷砖地图集。我用的是iPad3。有什么线索可以解释为什么会发生这种情况吗?很确定这不是因为tileSet图像大小:256x

我在iOS上使用CoCo2D v0.99.5。我将瓷砖地图集像素宽度/高度从256x512调整为256x1024。我在项目的tmx文件中相应地调整了瓷砖大小、宽度和高度属性。如果我在tile atlas中512以下的任何位置绘制tile,即使我在正确的层上绘制tile,我也会得到断言失败“每层仅支持1个tilset”


我知道它应该支持高达1024x1024像素或两倍于视网膜的瓷砖地图集。我用的是iPad3。有什么线索可以解释为什么会发生这种情况吗?

很确定这不是因为tileSet图像大小:256x1024

当您在一个图层中使用来自两个不同瓷砖集的瓷砖时,会出现此错误

因此,在一层中使用一个瓷砖集的瓷砖。可以在一个地图中添加多个图层,但每个图层都包含来自唯一瓷砖集的瓷砖


这很可能与瓷砖集的大小有关。调整tileset大小时,必须确保存储在TMX文件中的信息也相应更新

假设您有一个256x256瓷砖集和64x64瓷砖。这意味着此特定的瓷砖集将具有GID范围为0到15的瓷砖。现在,如果将此平铺集的宽度增加到512x256,则平铺集的范围为0到31。这里重要的一点是,同一GID的位置可能会根据正在使用的tileset图像和存储在TMX文件中的tileset大小而改变

根据cocos2d的说法,这种差异导致了一个tile GID的查找,这个tile GID应该不在层的一个tileset中。因此,它抱怨您可能试图使用层上不同瓷砖集的瓷砖


始终确保TMX tileset信息与实际tileset图像的信息匹配。可以肯定的是,从设备上删除应用程序并执行干净的构建,以确保应用程序作为一个整体重新构建并传输到设备上。

我每层使用一个tileSet。Guru我非常熟悉真正的问题,因为我已经做了2年半了,但不是这样。我已经做了多次测试,以确保情况并非如此。好吧……还有一个奇怪的问题……我使用了1024x1024 tileSet,没有问题……作为另一个测试,我将其恢复到原始尺寸,并正常工作。因此,我不确定如何使其大于256x512而不出现此问题。在cocos2d 2.0中会发生什么?可能在这方面得到解决..我使用了新版本的cocos2d。有意义。谢谢,我相信就是这样。在某些情况下,当游戏运行时,我会将其他地砖地图集中的地砖放在地图上,所以这符合我的想法。