openGL褪色背景

时间:2010-09-14 00:40:04

标签: android opengl-es

我正在尝试创建一个特定的效果,我在屏幕上有一堆粒子,这些粒子会慢慢消失。我希望我可以简单地使用具有小alpha值的glClear来做到这一点,但这似乎不起作用。 我的第二个想法是在屏幕的正面画一个黑色的脸,但这似乎没有给我正确的效果,粒子褪色但背景并没有真正褪色。我的下一个想法是渲染纹理并淡化纹理,但这是一项额外的工作,我不确定它是否能解决我的问题。谁能想到办法做到这一点?我错过了什么吗?

编辑此外,我无法在Android上查找有关渲染纹理的信息。如果有人有一些链接到很棒的文章。

1 个答案:

答案 0 :(得分:0)

假设你的'粒子'只是一堆带纹理的精灵,你可以使用glVertexPointer()简单地为精灵的每个顶点添加颜色数据。然后,为顶点设置的颜色将与精灵的纹理混合。您可以轻松更新这些值以实现“淡入淡出”效果。

E.g。如果为每个顶点设置RGBA =(1,1,1,1),则精灵将显示为之前(无半透明),设置RGBA =(1,0,0,1)精灵将显示为红色(无半透明) ,设置RGBA =(0.5,0.5,0.5,0.5)精灵将显示半透明等。您必须事先设置正确的glBlendFunc()以获得所需的行为!

干杯,阿尔特。