首页 > 其他 > 详细

cocos2dx背景透明处理

时间:2015-02-04 23:24:46      阅读:547      评论:0      收藏:0      [点我收藏+]
以最新的Cocos2d-x 3.2 release为例,介绍如何在Cocos2d-x中让程序背景透明。

一样,先上图。


技术分享
修改的东西不多。主要有3步。

1.在AndroidManifest.xml中设置Activity背景透明
?
1
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"

如图,

技术分享

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);

如图,

技术分享
 

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);

如图,

技术分享
  好了,如果有更好的办法欢迎跟帖提出。

cocos2dx背景透明处理

原文:http://blog.csdn.net/zmzsoftware/article/details/43499597

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!