Android openGL淡入淡出背景

Android openGL淡入淡出背景,android,opengl-es,Android,Opengl Es,我试图创造一种特殊的效果,在屏幕上有一堆粒子,这些粒子留下的痕迹会慢慢消失。我希望我可以简单地使用glClear和一个小的alpha值来实现这一点,但这似乎不起作用。 我的第二个想法是在屏幕前面画一张黑脸,但这似乎没有给我正确的效果,粒子褪色了,但背景没有真正褪色。我的下一个想法是渲染到一个纹理并淡出该纹理,但这需要大量的额外工作,我不确定它是否能解决我的问题。有人能想出一个办法吗?我错过什么了吗 我在android上很难找到渲染到纹理的信息。如果有人有一些文章的链接,那就太好了。假设你的“粒子

我试图创造一种特殊的效果,在屏幕上有一堆粒子,这些粒子留下的痕迹会慢慢消失。我希望我可以简单地使用glClear和一个小的alpha值来实现这一点,但这似乎不起作用。 我的第二个想法是在屏幕前面画一张黑脸,但这似乎没有给我正确的效果,粒子褪色了,但背景没有真正褪色。我的下一个想法是渲染到一个纹理并淡出该纹理,但这需要大量的额外工作,我不确定它是否能解决我的问题。有人能想出一个办法吗?我错过什么了吗


我在android上很难找到渲染到纹理的信息。如果有人有一些文章的链接,那就太好了。

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

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


干杯,阿尔特。

我就是这么做的。但我想让粒子留下彩色的痕迹。不清除颜色缓冲区就可以做到这一点,但我想让轨迹淡出;也许只是产生更多的,然后淡出它们。我想你的日常粒子引擎就是这样做的。请看一看AndEngine的粒子引擎源代码,这可能会让您了解如何做到这一点。