加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

解决cocos2d-x和android activity互相调用时切换慢的问题

发布时间:2020-12-14 19:18:34 所属栏目:百科 来源:网络整理
导读:转载自: http://www.silverna.org/blog/?p=268 cocos2d-x 编译 android 应用,生成的 activity 继承自 Cocos2dxActivity,如果在应用中启用一个新的 java 的 activity,并且在两个 activity 之间切换,那么从 java 的 acitivity 切回来的时候会比较慢 原因:

转载自:http://www.silverna.org/blog/?p=268

cocos2d-x 编译 android 应用,生成的 activity 继承自 Cocos2dxActivity,如果在应用中启用一个新的 java 的 activity,并且在两个 activity 之间切换,那么从 java 的 acitivity 切回来的时候会比较慢

原因:

从 log 中可以看到,切回 cocos2dx 的acitvity 的时候 openglES 会重新加载所有的 Texture,这个操作比较耗时,导致了回切的时候慢。

修改方法:

1)在Cocos2dxGLSurfaceView的onPause中, 注释掉super.onPause() 添加this.setVisibility(View.GONE);
2) 在Cocos2dxGLSurfaceView的onResume中, 注释掉super.onResume() 添加this.setVisibility(View.VISIBLE);
3) 在CCPlatform.h 中 :

#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) #define CC_ENABLE_CACHE_TEXTURE_DATA 0 //原来是1 #else #define CC_ENABLE_CACHE_TEXTURE_DATA 0 #endif

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读