码迷,mamicode.com
首页 > 其他好文 > 详细

将 cocos2dx 背景 设置 成 透明 的方法

时间:2015-07-04 09:48:56      阅读:356      评论:0      收藏:0      [点我收藏+]

标签:cocos2dx 将背景设置成 透明

下面 为 从 网络上 搜索到的 将 cocos2dx 背景 设置成 透明的 方法,

android 层,自己 亲测 OK, 但是  需要 将 glSurfaceView.setZOrderOnTop(true); 这句话 注释掉。否则 会有 问题。

android 层 还有 一个 貌似 可行的 方法(没测过):http://blog.csdn.net/ypist/article/details/8805422

至于 ios 端,自己 没测试,博友 可以 参考一下。


android层:

public Cocos2dxGLSurfaceView onCreateView() {
        Cocos2dxGLSurfaceView glSurfaceView = new Cocos2dxGLSurfaceView(this);
        // hello should create stencil buffer
//        glSurfaceView.setEGLConfigChooser(5, 6, 5, 0, 16, 8);//modify
        
        glSurfaceView.setEGLConfigChooser(8, 8, 8, 8, 16, 0);
        glSurfaceView.setZOrderOnTop(true);
        glSurfaceView.getHolder().setFormat(PixelFormat.TRANSLUCENT);
        
        return glSurfaceView;
    }
C++层:
void CCDirector::setGLDefaultValues(void)
{
    // This method SHOULD be called only after openGLView_ was initialized
    CCAssert(m_pobOpenGLView, "opengl view should not be null");

    setAlphaBlending(true);
    // XXX: Fix me, should enable/disable depth test according the depth format as cocos2d-iphone did
    // [self setDepthTest: view_.depthFormat];
    setDepthTest(false);
    setProjection(m_eProjection);

    // set other opengl default values
    //glClearColor(0.0f, 0.0f, 0.0f, 1.0f);//modify
    glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
}

即可实现透明效果 


补充IOS 上可以参考这个方法变成透明背景:
http://blog.sina.com.cn/s/blog_6957e2e50101bxf1.html

要点是首先pixelFormat:kEAGLColorFormatRGBA8,必须有alpha层才能透明。
然后view设置为透明
glView.opaque = NO;
[director setOpenGLView:glView];
[self.viewController.view setBackgroundColor:[UIColor clearColor]];
[self.viewController.view addSubview:glView];

在3.3 版本下,我是在项目内搜索glClearColor,把CCDirector.cpp里的默认背景色设置,改为透明。不同版本处理略有差异

glClearColor(0.0f, 0.0f, 0.0f, 0.0f); 


参考网址:http://www.cocoachina.com/bbs/read.php?tid-156363-page-2.html

版权声明:本文为博主原创文章,未经博主允许不得转载。

将 cocos2dx 背景 设置 成 透明 的方法

标签:cocos2dx 将背景设置成 透明

原文地址:http://blog.csdn.net/fuming0210sc/article/details/46744277

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!