CCEGLView::sharedOpenGLView().setScissorInPoints() apply scissor in pixels?

CCEGLView::sharedOpenGLView().setScissorInPoints() apply scissor in pixels?
0.0 0


To reproduce:

  1. In HelloWorld override visit() metod;

  2. add to HelloWorldScene.cpp

    void HelloWorld::visit()
    CCSize scissorSize = CCDirector::sharedDirector()->getWinSize();
    CCRect scissorRect = CCRect(0, 0, scissorSize.width, scissorSize.height * 0.5f); //only the lower half of the screen is visible

     CCEGLView::sharedOpenGLView().setScissorInPoints(scissorRect.origin.x, scissorRect.origin.y,
                                                          scissorRect.size.width, scissorRect.size.height);


  3. Run application

If Retina mode disabled - works fine, but if enable Retina only quarter of the screen is visible.

And if replace

-CCSize scissorSize = CCDirector::sharedDirector()->getWinSize();
+CCSize scissorSize = CCDirector::sharedDirector()->getWinSizeInPixels();

Working as expected


Hi, Serg Merg,
So do you think that we should consider RETINA mode in CCEGLViewProtocol::setScissorInPoints? What about your opinion?


Thanks, issue #1301 created for this bug.