【发布时间】:2010-10-13 07:48:27
【问题描述】:
我使用 GLUtils.texImage2D 成功地生成了我的纹理, 但是当我使用生成的纹理时,我的 alpha 出现问题:它们比想要的要暗。
在检查了几件事后,我终于得出问题出在 GLUtils.texImage2D(GL10.GL_TEXTURE_2D, level, bmp, 0); 的结论;
我创建了第二个函数,它使用 gl.glTexImage2D(GL10.GL_TEXTURE_2D, level, GL10.GL_RGBA, width, height, 0, GL10.GL_RGBA, GL10.GL_UNSIGNED_BYTE, pixel2);
但是创建像素2 的处理成本很高,它是一个字节缓冲区,我必须在将值从位图 ARGB 更改为纹理 RGBA 的同时重新复制字节。
有人注意到了吗?如果是这样,你是如何解决这个问题的......
杰森
感谢您的回答, 我已经在使用了
gl.glBlendFunc(GL10.GL_SRC_ALPHA, GL10.GL_ONE_MINUS_SRC_ALPHA);
我遇到了这个问题
我的问题是 GLUtils 生成的 alpha 不是纹理之一,它更暗。
区别就像在阳光下和阴影下看颜色(如果这有意义的话)。
我已经尝试过 gl.gltextimage2d,但是创建缓冲区需要很长时间,除非有一个工具可以将位图转换为我不知道的字节缓冲区...
【问题讨论】: