• Cocos2dx 解决闪屏问题


    一旦两个精灵图片交叠且移动的时候,偶尔会产生闪屏问题:即两个图片相互闪烁,仿佛引擎无法识别哪个是前景哪个是背景

    切到CCDirector::setGLDefaultValues() 查看

     1 void CCDirector::setGLDefaultValues(void)
     2 {
     3     // This method SHOULD be called only after openGLView_ was initialized
     4     CCAssert(m_pobOpenGLView, "opengl view should not be null");
     5 
     6     setAlphaBlending(true);
     7     setDepthTest(true);
     8     setProjection(m_eProjection);
     9 
    10     // set other opengl default values
    11     glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
    12 
    13 #if CC_DIRECTOR_FAST_FPS
    14     if (! m_pFPSLabel)
    15     {
    16         m_pFPSLabel = CCLabelTTF::labelWithString("00.0", "Arial", 24);
    17         m_pFPSLabel->retain();
    18     }
    19 #endif
    20 }

    发现第七行打开了深度测试,于是在AppDelegate::applicationDidFinishLaunching()中,添加一行:

    CCDirector::sharedDirector()->setDepthTest(false);//关闭深度测试

    成功解决

    补充:还可以添加这行代码

    CCDirector::sharedDirector()->setProjection(kCCDirectorProjection2D);//使用2D投影(默认3D)

      

    除非注明,Cydonia博客文章均为原创,转载请以链接形式标明本文地址

      

    博客地址:http://www.cnblogs.com/cydonia/

  • 相关阅读:
    推荐一波好的代码托管
    二十一、如何导入svg图片
    二十、滑动开关css
    十九、CSS如何引入字体
    十八、移动端rem布局
    十五、css3 Filter--滤镜
    十四、css动画基础知识
    十三、初始化标签默认样式
    十二、移动端头部声明
    十一、使用a标签打电话、发短信、发邮件
  • 原文地址:https://www.cnblogs.com/cydonia/p/2556925.html
Copyright © 2020-2023  润新知