【问题标题】:OpenGL warp effect with too few polygons多边形太少的OpenGL扭曲效果
【发布时间】:2017-10-24 21:42:37
【问题描述】:

我正在开发一个小型 2d 游戏,我的巫师会施展法术现在我有一个顶点着色器扭曲我用来绘制世界的矩形的点。有两个问题。首先是在我的简单 2d 游戏中没有足够多的多边形,无法无缝运行。第二个是我的地形是由六角形格子组成的。因为 4 点矩形多边形不代表六角网格的 6 个点连接在一起的位置,多边形的扭曲导致世界分崩离析,下面出现间隙。现在我可以将世界更改为使用 6 点六角多边形而不是具有六角纹理的矩形,但这超出了范围。

是否可以在屏幕外的某个地方渲染我的世界,然后将屏幕外的帧作为纹理,然后以更高的多边形数再次渲染它?那时我会使用我的扭曲顶点着色器。

还有其他方法吗?

【问题讨论】:

    标签: opengl glsl fbo render-to-texture


    【解决方案1】:

    您希望将此作为像素着色器中的后期处理效果。获取您之前的渲染目标,然后将其用作此后期处理效果的输入。

    纹理渲染指南 http://www.opengl-tutorial.org/intermediate-tutorials/tutorial-14-render-to-texture/

    Fire 确实会发生折射,但我会从有关此漩涡的代码中学习并对其进行修改以使屏幕效果更像您想要的那样。做折射有点困难,但你可以用这里的想法来模拟它,并操纵你如何对带有噪声的 uv 进行采样。

    http://www.geeks3d.com/20110428/shader-library-swirl-post-processing-filter-in-glsl/

    这应该会让你指出一些正确的方向。

    【讨论】:

    • 感谢您的回复,我将调查给出的链接,并在有机会尝试时更新答案。不幸的是,这只是一个个人项目,所以不确定我什么时候有机会尝试一下。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多