文档章节

Cocos2d-x JavaActivity 程序背景透明

piggybear
 piggybear
发布于 2015/02/16 10:32
字数 313
阅读 4
收藏 0

之前发过一篇《如何在Cocos2d-x 3.0rc0中让程序背景透明》,但是由于3.0-rc0后Cocos2d-x更改为Java Activity,而不再是Native Activity,使得这种方法失效。


这里以最新的Cocos2d-x 3.2 release为例,介绍如何在Cocos2d-x中让程序背景透明。


一样,先上图:

1408513756377053.png:

修改的东西不多。主要有3步。


1.在AndroidManifest.xml中设置Activity背景透明

1
android:theme= "@android :style/Theme.Translucent.NoTitleBar.Fullscreen"

如图,

1408513804269151.png


2.在libcocos2dx项目的org.cocos2dx.lib项目中的Cocos2dxActivity.java文件中,修改init()方法。

增加如下代码:

1
2
3
this .mGLSurfaceView.setZOrderOnTop( true );
this .mGLSurfaceView.getHolder().setFormat(PixelFormat.TRANSLUCENT);
this .mGLSurfaceView.setEGLConfigChooser(8,8,8,8,16,0);


删除如下代码(如果不删除的话,顶部会有一个Cocos2dxEditText的白条,Cocos2dxEditText封装了EditText,主要用于TextField,如果程序中有使用到它,那建议更换为EditBox)

1
2
//mFrameLayout.addView(edittext);
//this.mGLSurfaceView.setCocos2dxEditText(edittext);

如图,

1408513846632214.png

3.在libcocos2dx项目的org.cocos2dx.lib项目中的Cocos2dxRenderer.java文件中,修改onSurfaceCreated()方法。

增加如下代码:

1
2
3
4
5
pGL10.glDisable(GL10.GL_DITHER);
pGL10.glHint(GL10.GL_PERSPECTIVE_CORRECTION_HINT, GL10.GL_FASTEST);
pGL10.glClearColor(0, 0, 0, 0);
pGL10.glEnable(GL10.GL_CULL_FACE);
pGL10.glShadeModel(GL10.GL_SMOOTH);

如图,

1408513950301584.png

点击这里下载本工程源码。


好了,如果有更好的办法欢迎加入论坛,参与本帖的讨论。

来源网址:http://www.cocoachina.com/bbs/read.php?tid=224544

本文转载自:http://blog.csdn.net/aa294194253/article/details/38725837

共有 人打赏支持
piggybear
粉丝 3
博文 237
码字总数 37552
作品 0
西安
技术主管
私信 提问
cocos2d-x-3.7.1 发布,C++ 游戏开发引擎

cocos2d-x-3.7.1 发布,亮点功能: Cocos2d-x v3.7.1 是基于 v3.7 开发的一个稳定版本。该版本最重要的功能是为支持 Cocos 2.3.2 Beta 而增加的骨骼动画支持。 studio: 增加了骨骼动画支持 ...

开源中国总统
2015/08/20
4.2K
9
Cocos2d-x优化中关于背景图片优化

由于背景图片长时间在场景中保存,而且图片很多,我们可以对其进行一些优化。我们通过如下几个方面考虑优化: 1、不要Alpha通道 背景图片的特点是不需要透明的,所以纹理格式可以采用不带有A...

智捷课堂
2014/11/11
0
0
【iOS-Cocos2d游戏开发之七】在cocos2d中添加/删除系统组件,并解决View设置透明会影响View中的其他组件的问题!【11月28日更新解决添加组件Cocos2d动画停止播放的BUG】

11月28日:——————————— 有的童鞋说添加嘞组件(UIScrollView)后操作组件时Cocos2d的动画停止不懂嘞,我测试下,果然是,下面是解决方法: 首先大家在项目中搜索:CCDirectorIOS...

junwong
2012/03/02
1K
0
cocos2d-x一些核心概念介绍

Cocos2d-x中有很多概念,这些概念很多来源于动画、动漫和电影等行业,例如:导演、场景和层等概念,当然也有些有传统的游戏的概念。Cocos2d-x中核心概念:导演, 场景,层,节点,精灵,菜单...

技术小阿哥
2017/11/27
0
0
【iOS-Cocos2d游戏开发之十八】解决滚屏背景/拼接地图有黑边(缝隙)/动画播放出现毛边以及禁止游戏中自动锁屏问题!【2011年12月18日补充】

李华明Himi 原创,转载务必在明显处注明: 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/iphone-cocos2d/507.html 本章节主要为大家介绍在游戏开发过程中经常遇到的两个问题...

迷途d书童
2012/03/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

不用编写程序代码,送你一个爬虫程序批量采集猫眼电影票房数据

"大数据"是一个体量特别大,数据类别特别大的数据集,并且这样的数据集无法用传统数据库工具对其内容进行抓取、管理和处理。 "大数据"首先是指数据体量(volumes)大,指代大型数据集,一般在1...

技术阿飞
20分钟前
0
0
【Flutter教程】从零构建电商应用(一)

在这个系列中,我们将学习如何使用google的移动开发框架flutter创建一个电商应用。本文是flutter框架系列教程的第一部分,将学习如何安装Flutter开发环境并创建第一个Flutter应用,并学习Flu...

笔阁
41分钟前
5
0
什么是以太坊DAO?(三)

Decentralized Autonomous Organization,简称DAO,以太坊中重要的概念。一般翻译为去中心化的自治组织。 投票支付合约的所有费用和行动需要时间,并要求用户始终保持活跃,知情和专注。另一...

geek12345
42分钟前
2
0
一个本科学生对Linux的认知

一个本科学生对Linux的认知 我是一名大三的普通一本大学的软件工程的一名学生,学校开设了一些关于系统开发的课程,纸上得来终觉浅,学校的课程课时较短,想要在56个课时之内学会一些公司需要...

linuxCool
今天
3
0
CentOS 安装Tomcat

Tomcat 介绍 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。 Java 程序写的网站用tomcat+jdk来运...

野雪球
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部