Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/202.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有没有办法让整个Android OpenGL ES场景透明?_Android_Opengl Es - Fatal编程技术网

有没有办法让整个Android OpenGL ES场景透明?

有没有办法让整个Android OpenGL ES场景透明?,android,opengl-es,Android,Opengl Es,有没有办法使整个Android OpenGL ES场景透明?这对小部件和壁纸很有用 有一个特定于Android的答案。但我的理解是,这种技术创造了一个透明的背景,人们可以在其上进一步绘制透明的形状 我正在寻找一种方法,使整个场景在绘制后透明。例如,在绘制场景后,是否有任何方法可以更改整个颜色缓冲区的alpha?如果您需要API 14(Android 4.0),则有一个新类可以解决此问题:。这里面有一些信息。不幸的是,我认为在以前的Android版本中没有一种简单的方法可以做到这一点。是的,而且非

有没有办法使整个Android OpenGL ES场景透明?这对小部件和壁纸很有用

有一个特定于Android的答案。但我的理解是,这种技术创造了一个透明的背景,人们可以在其上进一步绘制透明的形状


我正在寻找一种方法,使整个场景在绘制后透明。例如,在绘制场景后,是否有任何方法可以更改整个颜色缓冲区的alpha?

如果您需要API 14(Android 4.0),则有一个新类可以解决此问题:。这里面有一些信息。不幸的是,我认为在以前的Android版本中没有一种简单的方法可以做到这一点。

是的,而且非常简单。您需要混合颜色缓冲区中的值,方法是使用“正确的颜色和混合”功能用四边形覆盖整个视图。我认为这会起作用:

  • 按正常方式绘制场景
  • 设置
    glBlendFunc(GL10.GL\u零,GL10.GL\u SRC\u颜色)
  • 绘制一个无纹理的彩色四边形,覆盖整个视图(R、G、B、A)=(1、1、1、A),其中A是所需的不透明度
这应该用a缩放colorbuffer的alpha,我认为这是您想要的