Cocos2d iphone 如何在最顶端的z-oder中绘制直线
我想画线连接两个精灵,但在这种情况下我不能这样做:Cocos2d iphone 如何在最顶端的z-oder中绘制直线,cocos2d-iphone,Cocos2d Iphone,我想画线连接两个精灵,但在这种情况下我不能这样做: //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
//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) );
}
这条线不会显示在屏幕上,如果我移除地图背景,它就会显示出来。我不知道Cocos2D,所以这只是胡乱猜测,但是[self addChild:map z:1 tag:kTagTileMap]的z参数;似乎是一个z偏移。由于1将位于0前面(可能是默认值),因此贴图将在线条前面渲染。尝试[self addChild:map z:-1标记:kTagTileMap] 我两天前遇到了同样的问题 我的解决方案是制作一个单独的MyLineLayer,它只画一条线。然后可以将CCLayer的z索引设置为顶部
我认为使用包络MyLineLayer比使平铺贴图的z索引更小要好。我不知道Cocos2D,所以这只是胡乱猜测,但是
[self addChild:map z:1 tag:kTagTileMap]的z
参数
似乎是一个z
偏移量。由于1将位于0前面(可能是默认值),因此贴图将在线条前面渲染。尝试[self addChild:map z:-1标记:kTagTileMap]代码>这是一个完美的黑暗世界,谢谢!然后我会把它作为一个答案。Yupz。。绘制线将始终在z:0处绘制。。所以唯一的办法就是把所有的东西都放在下面。。