【问题标题】:How to make glow/bloom effect around a simple circle?如何围绕一个简单的圆圈制作发光/绽放效果?
【发布时间】:2016-12-11 13:06:54
【问题描述】:

我在片段着色器中做了一个简单的圆圈:

float dist = length(gl_PointCoord - 0.5); // distance to center
float circle = smoothstep(0.3, 0.5, dist); // apply smoothing curve

现在我会围绕它做一些绽放效果。像这样: https://i.stack.imgur.com/rIS2o.png

【问题讨论】:

    标签: 2d glsl shader bloom


    【解决方案1】:

    我认为您正在寻找的是径向渐变。 这个链接看起来很有帮助RadialGradient Shader

    【讨论】:

      【解决方案2】:

      请找到这个 nvidia document 以获得简单的发光效果。基本思路是

      1. 在后台缓冲区中渲染场景激活效果
      2. 在 FBO 中渲染场景的一些元素
      3. 计算发光效果
      4. 将最终的 FBO 绑定为纹理,并将此效果与后台缓冲区中先前渲染的场景混合

      【讨论】:

      • 有一个带有位图的例子,但我猜它应该更容易做圆圈。
      猜你喜欢
      • 2014-04-02
      • 2019-09-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-10
      • 1970-01-01
      • 2021-06-24
      • 2010-11-30
      相关资源
      最近更新 更多