0

我是opengl的新手,不知道如何处理不透明度。我有两个重叠的图层,我将两个图层都绘制到屏幕上。我想淡出前景中的图像以过渡到背景图像。有没有办法做到这一点?这是我的绘制方法。

public void draw(GL10 gl10) {
    gl10.glDisable(GL10.GL_BLEND);
    gl10.glEnable(GL10.GL_BLEND);
    gl10.glBlendFunc(GL10.GL_TRUE, GL10.GL_ONE_MINUS_SRC_ALPHA);
    gl10.glClearColor(0F, 0F, 0F, 0);
    gl10.glBindTexture(GL10.GL_TEXTURE_2D, this.mTextureId);
    this.layer1.draw(gl10); // i want to transition from this layer
            this.layer2.draw(gl10); // to this layer by changing opacity
            }

我什至不知道我是否正确地提出了我的问题。希望你得到它:)

4

1 回答 1

0

好吧,这取决于您用于此转换的方法。我在动画视图中也有类似的情况。关于您的不透明度问题,您不能使用

View v;
int i = 0; /*Values from 0 to 1, float cast might be needed for intermediate values*/
v.setAlpha(i);
this.layer2.setAlpha(i);

或类似的东西,这不适用于您的情况吗?

于 2013-02-13T15:20:11.083 回答