setEGLconfigchooser更改对象的颜色

时间:2013-09-09 15:39:49

标签: android opengl-es transparent

我创建了一个GLsurfaceView,它根据我按屏幕的位置呈现正方形。 我希望它出现在不同的布局上方。 为了让它透明我打电话:

    setEGLConfigChooser(8,8,8,8,16,0);
    mRenderer = new SlidingRenderer();
    setRenderer(mRenderer);
    getHolder().setFormat(PixelFormat.TRANSLUCENT);

在我的渲染器中:

 public void onDrawFrame(GL10 gl){

     gl.glClearColor(0, 0, 0, 0);

但它也会改变我绘制的方块的颜色,使其看起来也是半透明的。

在:

pic before

在:

pic before

1 个答案:

答案 0 :(得分:0)

TRANSLUCENT是一个模糊的像素格式描述符,根据其定义,系统可以自由选择RGBA_4444RGBA_8888

系统配置为选择满足您条件的最小像素格式非常好。对于PixelFormat.TRANSLUCENT,这些条件是:

  

系统选择支持半透明的格式(多个alpha位)

由于您可能希望与EGL像素格式匹配,请尝试使用PixelFormat.RGBA_8888代替PixelFormat.TRANSLUCENT