如果我在Android中使用libgdx,如何使屏幕的背景透明?
我尝试使用的代码无效。
Gdx.gl.glClearColor( 0, 0, 0, 0 );
Gdx.gl.glClear( GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT );
如果我在Android中使用libgdx,如何使屏幕的背景透明?
我尝试使用的代码无效。
Gdx.gl.glClearColor( 0, 0, 0, 0 );
Gdx.gl.glClear( GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT );
AndroidApplicationConfiguration cfg = new AndroidApplicationConfiguration();
cfg.r = cfg.g = cfg.b = cfg.a = 8;
cfg.useGL20 = false;
View view = initializeForView(new LineDrawing(), cfg);
if (graphics.getView() instanceof SurfaceView) {
SurfaceView glView = (SurfaceView) graphics.getView();
glView.getHolder().setFormat(PixelFormat.TRANSLUCENT);
glView.setZOrderOnTop(true);
}
从这个角度考虑 - 当你至少有两个物体时,透明度才是可见的。如果你有一个黑色背景,并在其上绘制透明度为50%的白色图层,你将通过白色图层看到黑色背景。现在,在开始时,你有屏幕。它可以是任何颜色。在屏幕下面,没有任何东西。因此,如果你需要透明度,请使用带alpha通道的东西绘制在屏幕上方。
.setAlpha(150);
。 - Kartheek Sarabu