我是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
}
我甚至不知道我正确地提出了我的问题。希望你明白:)
答案 0 :(得分: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);
或类似的东西,这不适用于您的情况吗?