3

我需要使用 OpenGL ES 1.1 (iPhone) 创建好看的闪电,并计划使用着色器。但是,当我在上一个问题( OpenGL ES 1.x Shaders )中询问它时,我被告知这可能不是 iPhone 上的选项。

所以现在我回到了第一方,想知道如何制作闪电动画。它不需要看起来超现实。我已经尝试过使用剥离在一起的三角形之类的东西。虽然这种方法确实有效,但它并不像我希望的那样好。

有人对这个主题有任何想法吗?

再次感谢,
〜埃里克

4

5 回答 5

4

尝试使用具有从黑色到低饱和度蓝色或紫色到白色的渐变纹理的三角形条。将混合设置为添加剂(GL_SRC_ALPHA,GL_ONE)。

于 2009-02-13T00:41:44.720 回答
2

你也许可以改编这个项目的代码。虽然它不是 ObjC/C,但它确实使用了 OpenGL。

是一篇文章,更详细地描述了效果并提供了 VB/DirectX 实现。

于 2009-02-13T00:16:34.500 回答
2

通常的方法是使用 Perlin 函数计算闪电的路径,将其渲染到发光缓冲区,使用高斯模糊着色器创建漂亮的模糊,然后将其与场景合并。

于 2010-07-24T12:49:15.587 回答
0

也许我错过了一些东西,但是glLight()像其他人一样简单地使用和固定功能有什么问题?

于 2009-02-12T23:54:49.217 回答
0

必须是非常明亮的光才能使它看起来像闪电,并且您不需要将光照射到或穿过某物吗?

于 2009-02-13T00:03:32.393 回答