我正在尝试在太阳周围添加一些模糊效果,以使其具有发光效果。
我在这里使用的方法:
http://nehe.gamedev.net/tutorial/radial_blur__rendering_to_a_texture/18004/
基本上,我绘制一个球体,它获取当前缓冲区并将其作为纹理抓取并重绘多次,每次都拉伸它。
当对象位于屏幕中央时,这非常有用。但是,我想让它抵消说,右上角。
这是我认为需要调整的主要部分:
glColor4f(1.0f, 1.0f, 1.0f, alpha); // Set The Alpha Value (Starts At 0.2)
glTexCoord2f(0+spost,1-spost); // Texture Coordinate ( 0, 1 )
glVertex2f(0,0); // First Vertex ( 0, 0 )
glTexCoord2f(0+spost,0+spost); // Texture Coordinate ( 0, 0 )
glVertex2f(0,480); // Second Vertex ( 0, 480 )
glTexCoord2f(1-spost,0+spost); // Texture Coordinate ( 1, 0 )
glVertex2f(640,480); // Third Vertex ( 640, 480 )
glTexCoord2f(1-spost,1-spost); // Texture Coordinate ( 1, 1 )
glVertex2f(640,0);
不过,对于我的生活,我不知道如何每次都偏移它,以使模糊的图像不会向右偏移。我知道正在捕获整个屏幕,但是在绘制纹理时必须有一种方法来抵消它.....
如何?