Cocos2d iphone kobold2d瓷砖贴图瓷砖之间的黑色间隙
我正在做一个标准的kobold2d tilemap游戏,我试图从从tilemap编辑器加载一个tile贴图开始,一个.tmx文件 标准代码非常简单:Cocos2d iphone kobold2d瓷砖贴图瓷砖之间的黑色间隙,cocos2d-iphone,tile,kobold2d,Cocos2d Iphone,Tile,Kobold2d,我正在做一个标准的kobold2d tilemap游戏,我试图从从tilemap编辑器加载一个tile贴图开始,一个.tmx文件 标准代码非常简单: -(id) init { self = [super init]; if (self) { // add init code here (note: self.parent is still nil here!) CCTMXTiledMap *t
-(id) init
{
self = [super init];
if (self)
{
// add init code here (note: self.parent is still nil here!)
CCTMXTiledMap *tiledMap = [CCTMXTiledMap tiledMapWithTMXFile:@"background.tmx"];
[self addChild:tiledMap z:-1];
tiledMap.position = CGPointMake(-500, -300);
for( CCTMXLayer* child in [tiledMap children] ) {
[[child texture] setAntiAliasTexParameters];
}
// uncomment if you want the update method to be executed every frame
//[self scheduleUpdate];
}
return self;
}
“我的瓷砖贴图”是一个40x35瓷砖,每个瓷砖为:64x64像素
但是,我得到了以下结果,看起来在层的每一行之间都有一条黑线:
我的tilemap看起来像:
cocos2d中相当标准的tilemap问题 该快速修复在ccConfig.h中被称为“通过拉伸texel修复工件”,但它是一种带有锯齿副作用的黑客解决方法,在缓慢滚动或缩放时尤其明显 实际修复需要将tmx节点、其父节点和所有祖辈节点的所有位置设置为精确的像素位置。在非视网膜设备上,这意味着将x/y坐标转换为int,在视网膜设备上,这意味着舍入到下一个最接近的0.5坐标(即10.3变为10.5,10.8变为11.0)
注:KoboldTouch和KoboldKit(Sprite Kit)tilemap渲染器没有黑线瑕疵问题。CoCoCos2D中相当标准的tilemap问题 该快速修复在ccConfig.h中被称为“通过拉伸texel修复工件”,但它是一种带有锯齿副作用的黑客解决方法,在缓慢滚动或缩放时尤其明显 实际修复需要将tmx节点、其父节点和所有祖辈节点的所有位置设置为精确的像素位置。在非视网膜设备上,这意味着将x/y坐标转换为int,在视网膜设备上,这意味着舍入到下一个最接近的0.5坐标(即10.3变为10.5,10.8变为11.0) 注:KoboldTouch和KoboldKit(精灵工具包)tilemap渲染器没有黑线瑕疵问题