cocos2d中,设置层的可视区域在真机上不管用
-(void) visit{
glEnable(GL_SCISSOR_TEST);
glScissor(120,130, 240, 100);
[super visit];
glDisable(GL_SCISSOR_TEST);
}
这个在模拟器上是可以用的,但是在真机上什么都看不到,不知道是不是参数设置的不对?
在真机上看不到显示的原因,推测是真机上的分辩率是640*960,位置超出了
自己改成
- (void)visit
{
CGFloat scale = [[CCDirector sharedDirector] contentScaleFactor];
CGPoint pos = self.position;
glEnable(GL_SCISSOR_TEST);
glScissor(pos.x*scale,
pos.y*scale,
self.contentSize.width*scale,
self.contentSize.height*scale);
[super visit];
glDisable(GL_SCISSOR_TEST);
}
这样就没问题了