我发现了这个视频:http://www.youtube.com/watch?v=eVi6ThY3LRs。我想知道这是否是openGLES的一种标准效果。我相当确定它是,因为我经常看到这种效果。KoiPond使用它,DuckDuckDuck也使用它。很多游戏都在使用它。他们不都是宇航员。他们是普通的程序员;那么这是如何实现的呢?网上有任何教程吗?
如果您想查看旧的示例,请查看“distort”示例。请注意,这是1992年创建的东西(只是在distort.c中查找)。
这是一个令人惊叹的程序,可以在鼠标按下的任何位置在图像中产生涟漪。该程序的另一种模式就像一张橡胶板,可以通过拖动鼠标来拉伸。
我设法在我的Mac上编译了这个示例。
#include <GL/glut.h>
重命名为#include <GLUT/glut.h>
idle()
函数中添加usleep(33*1000);
ripple_precalc.c
重命名为ripple_precalc.c.org
(或者直接删除它)cc *.c -framework GLUT -framework OpenGL
”进行编译,将创建一个a.out
(我随口猜测)也许是网格扭曲,其中纹理被固定到顶点上,因此当网格顶点移动时,纹理似乎会起波纹。通过在网格周围移动一组顶点位移,您可以制作出类似波前的均匀波纹...