好的,所以我正在尝试为我的游戏添加连接,但是使用混合在开放gl中遇到了一些问题。
我想做的是用黑色方块覆盖整个屏幕。然后,通过在其上施加具有较低α水平的另一形状来在其中切割孔。
Gdx.gl.glEnable(GL20.GL_BLEND);
Gdx.gl.glBlendFunc(GL20.GL_SRC_ALPHA, GL20.GL_SRC_ALPHA);
Gdx.gl20.glBlendEquation(GL.GL_FUNC_SUBTRACT);
woods.shapes.begin(ShapeType.Filled);
woods.shapes.setColor(255, 255, 255, 200);
woods.shapes.rect(0, 0, 600, 600);
woods.shapes.setColor(255, 255, 255, 10);
woods.shapes.rect(300, 300, 50, 50);
woods.shapes.end();
Gdx.gl20.glBlendEquation(GL.GL_FUNC_ADD);
Gdx.gl.glDisable(GL20.GL_BLEND);
这就是我现在正在使用它,但我似乎无法做到正确,结果永远不会是我所期待的。我怀疑它与我的blendfunc或blendequation有关但我尝试了大量不同的组合无济于事。任何帮助都会很棒。