Android切换到后台,返回后纹理丢失


1. 纹理丢失的原因:cocos2dx在android切换后台再切换回来的时候会重新绘制纹理,需要修改它的重新绘制机制。


2. 解决方式:


cocos2dx/platform/CCPlatformMacros.h:


--1.修改#defineCC_ENABLE_CACHE_TEXTURE_DATA 1 


为 #defineCC_ENABLE_CACHE_TEXTURE_DATA 0


--2.cocos2dx/platform/android/java/src/org/cocos2dx/lib/Cocos2dxGLSurfaceView.java:注释 super.onPause()


--3.javaactivity-android.cpp: 注释


else


{


cocos2d::GL::invalidateStateCache()
cocos2d::GLProgramCache::getInstance()->reloadDefaultGLPrograms();
cocos2d::DrawPrimitives::init();
cocos2d::VolatileTextureMgr::reloadAllTextures();


cocos2d::EventCustom recreatedEvent(EVENT_RENDERER_RECREATED);
director->getEventDispatcher()->dispatchEvent(&recreatedEvent);
director->setGLDefaultValues();
}
--4.修改android最小适配sdk:


3. 可以解决的问题:


android手机切换后台,切换回来纹理错位


android手机接电话,游戏纹理错位


android锁屏游戏黑屏


调用第三方sdk跳转界面时游戏黑屏、资源错位


很多文章都提到了 前三点  第四点设置minSdkVersion是一定要设置的 高于8 不行 具体原因不清楚 知道的楼下留言

更多相关文章

  1. Android屏幕的控制
  2. Android(安卓)解决setRequestedOrientation之后手机屏幕的旋转不
  3. 屏幕切换时Activity重启问题
  4. Android的Activity动画切换
  5. Android(安卓)警告提示:Activity has leaked window xxxxx was or
  6. Android动画效果 translate、scale、alpha、rotate 切换Activity
  7. Android(安卓)onSaveInstanceState和onRestoreInstanceState的用
  8. 【阿里云镜像】切换阿里巴巴开源镜像站镜像——Fedora镜像
  9. 【阿里云镜像】切换阿里巴巴开源镜像站镜像——Debian镜像

随机推荐

  1. 深入理解MySQL主从复制线程状态转变
  2. Mysql树形递归查询的实现方法
  3. MySQL主从同步机制与同步延时问题追查过
  4. Mysql的MERGE存储引擎详解
  5. Mysql主从复制注意事项的讲解
  6. Mysql连接join查询原理知识点
  7. MySQL ALTER命令知识点汇总
  8. 美团DB数据同步到数据仓库的架构与实践
  9. MySQL 8忘记密码的最佳处理方式浅析
  10. MySQL主从延迟现象及原理分析详解