Как сделать эффект свечения / цветения вокруг простого круга?

Я делаю простой круг во фрагментном шейдере:

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

А теперь я бы применил вокруг него эффект цветения. Как это:

2 ответа

Я думаю, что вы ищете радиальный градиент. Эта ссылка выглядит полезной RadialGradient Shader

Пожалуйста, найдите этот документ NVIDIA для простого эффекта свечения. Основная идея заключается в

  1. рендеринг сцены в заднем буфере активирует эффект
  2. визуализировать некоторые элементы сцены в FBO
  3. вычислить эффект свечения
  4. свяжите окончательное FBO как текстуру и смешайте этот эффект с ранее визуализированной сценой в бэкбуфере
Другие вопросы по тегам