Android 在opengl中动态更改纹理的不透明度?
我是opengl新手,不知道如何处理不透明度。我有两个重叠的图层,我在屏幕上画这两个图层。我想淡出前景中的那个,转换到背景图像。有没有办法做到这一点??这是我的画法Android 在opengl中动态更改纹理的不透明度?,android,opengl-es,Android,Opengl Es,我是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);
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
}
我甚至不知道我的问题是否正确。希望您能理解:)这取决于您在转换过程中使用的方法。我有一个动画视图类似的情况。关于你的不透明度问题,你不能使用
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);
或者类似的,这不适用于您的情况吗?顺便说一句,“cange”是标题;-)所有层都包含从单个纹理渲染的精灵。我的方法中不支持alpha。我所做的只是复制纹理。