• Cocos2d-x 解决闪屏问题


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

    切到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)

  • 相关阅读:
    linux常见的编码转换
    linux sort的用法
    转--11个失败之后
    shell入门
    迟到
    必须要回答的问题
    【转载】个人开发者要掌握的时间规划建议
    Unity 碰撞检测 OnTriggerEnter 入门
    浅谈BUFF设计
    随机掉宝,对玩家来讲真的随机吗?
  • 原文地址:https://www.cnblogs.com/rshow/p/3508362.html
Copyright © 2020-2023  润新知