android切换到后台,返回后图片纹理丢失
16lz
2021-01-23
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跳转界面时游戏黑屏、资源错位
更多相关文章
- Android后台运行的定时器实现
- Android语音播报、后台播报、语音识别
- Android学习-----如何使用sqlite进行后台数据交互,sqlite入门使用
- 基于Android的校园快递系统_移动端设计_后台管理_MySQL数据库设
- 后台应用不应做Android待机电池杀手
- Android OpenGL添加纹理
- android,总结,判断应用程序是否切换到后台
- Android监测前后台切换