现在的位置: 首页 > 综合 > 正文

cocos2d中,设置层的可视区域

2013年10月05日 ⁄ 综合 ⁄ 共 647字 ⁄ 字号 评论关闭

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);   

}

这样就没问题了


抱歉!评论已关闭.