我想画线连接两个精灵,但在这种情况下我不能这样做:
//add Map Background
map = [CCTMXTiledMap tiledMapWithTMXFile:@"orthogonal-test-zorder.tmx"];
[self addChild:map z:1 tag:kTagTileMap];
//overite draw function
- (void)draw {
glColor4f(0.8, 1.0, 0.76, 1.0);
glEnable(GL_LINE_SMOOTH);
ccDrawLine( ccp(0, 0), ccp(150, 150) );
}
屏幕上没有显示该行,如果我删除地图背景,则会显示。
答案 0 :(得分:2)
我不知道Cocos2D所以这只是疯狂的猜测,但是[self addChild:map z:1 tag:kTagTileMap]的z参数;似乎是一个z偏移。由于1将位于0(可能是默认值)的前面,因此您的地图将在您的线前呈现。试试[self addChild:map z:-1 tag:kTagTileMap];
答案 1 :(得分:0)
我在2天前遇到了同样的问题。
我的解决方案是制作一个单独的MyLineLayer,它只绘制线条。然后,您可以将CCLayer的z-index设置为顶部。
我认为使用封装的MyLineLayer会比使tile图的z-index更小更好。