Как добиться эффекта неонового света?

Ответы:

13

Ну вот :)

GPU Gems - Glow Effect

С таким количеством объектов с эффектом свечения на экране (особенно в Geometry Wars), это чаще всего эффект шейдера, подобный шейдеру, описанному в этой статье.

Рэй Дей
источник
Это произошло в модерации из-за предложенного редактирования для неработающей ссылки. Хотя я признаю, что этот ответ старый, политика все еще не поощряет ответы, содержащие только ссылки. Не могли бы вы рассмотреть обобщение основного подхода в основной части этого ответа, а не оставлять его полностью на усмотрение внешнего ресурса? Если в будущем связь снова разорвется, было бы идеально сохранить ключевые моменты здесь.
DMGregory
6

Возможно, вам даже не понадобится полноэкранный эффект цветения / свечения (помните, что этот вид эффектов довольно интенсивен для графических процессоров, особенно если вы создаете 2D-игру и хотите избежать высоких системных требований)

Во-первых, попробуйте визуализировать свои спрайты с помощью аддитивного смешивания - с помощью уравнения смешивания, такого как:

(SRC_COLOUR * SRC_ALPHA) + (DST_COLOUR * ONE)

Затем запекайте свечение в ваших спрайтах (или визуализируйте их как дополнительные аддитивные спрайты - чтобы создать «спрайт свечения», просто размытие исходного спрайта с использованием фильтра размытия по Гауссу в любом пакете рисования, который вы используете)

Конечно, у этого подхода есть некоторые ограничения - добавление перекрывающихся спрайтов может быть нежелательным, и его можно было бы избежать, используя полноэкранный эффект цветения / свечения

bluescrn
источник
2

Есть два способа достижения этого;

Верхний (предположительно) просто использует полупрозрачные изображения.

Нижний более сложный (снова предположение) играет с буферами, чтобы создать эффект свечения (цветения).

PhilCK
источник