如何在Android中使用libgdx使背景透明?libgdx中的背景透明度
我試圖使用的代碼不起作用。
Gdx.gl.glClearColor(0, 0, 0, 0);
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT);
如何在Android中使用libgdx使背景透明?libgdx中的背景透明度
我試圖使用的代碼不起作用。
Gdx.gl.glClearColor(0, 0, 0, 0);
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT);
剛剛找到解決方案!
只需將此代碼添加到擴展AndroidApplication的類。
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);
}
你是一個天才。 – BollMose
想想這樣 - 當你至少有兩件事情時透明度是可見的。如果你有一個黑色的背景,然後在它的頂部畫一個白色的透明度爲50%,你會看到穿過你的白色圖層的黑色背景。現在,在開始時你有屏幕。它可以是任何顏色。在這個屏幕下,什麼都沒有。所以,如果你需要透明度,用alpha通道繪製一些東西。
你是什麼意思與背景?其實你所做的只是清除沒有顏色的屏幕。如果你想要透明的東西,你需要的東西是背景和閃耀。你不能讓窗口及其內容透明,所以你看到桌面! 請給我們更多的信息你想做什麼? – BennX
你可以使用'.setAlpha(150);' –