Как я могу сделать этот стиль 2D «светящейся» графики?

29

Я знаком с основами создания 2-спрайтовой игры в XNA, где все мои объекты - просто .png изображения, которые я перемещаю.

Что мне нужно узнать дальше, чтобы иметь возможность разрабатывать 2D-игру, в которой используется художественный стиль, подобный, например, Super Laser Racer.

введите описание изображения здесь

Другие примеры этого стиля включают Frozen Synapse, Geometry Wars и т. Д.

Я бы описал этот стиль "2D абстрактная светящаяся геометрия" или что-то в этом роде.

Я вижу, что многие эффекты в играх такого типа достигаются с помощью систем частиц, а также, что некоторые вещи все еще являются спрайтами, которые можно нарисовать в графическом редакторе, чтобы они выглядели «светящимися» и т. Д.

Но тогда все остальное, возможно, делается с помощью вызовов отрисовки в DirectX и реализации пользовательских шейдеров и т. Д.?

Это правильно? Я не совсем уверен, что узнать дальше, чтобы иметь возможность идти в этом направлении или какие вопросы задавать.

TerryB
источник
Я просто хочу добавить, что ваша потеря для описания "2D абстрактной светящейся геометрии" возможна в Google как "векторная графика отображения", как это видно в астероидах, бурях и т. Д. (Не позволяйте MAME обмануть вас; оригинал, старое школьное оборудование для векторного отображения создало естественный эффект яркого свечения, который просто имитируют такие игры, как Geometry Wars) (добавив это как комментарий, а не как ответ, согласно рекомендации Питера Паркера)
christopherdrum

Ответы:

29

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

Некоторые образцы:

http://www.youtube.com/watch?v=_sx0KDO-ZbA

http://www.youtube.com/watch?v=-OZOdQHLiiI

r2d2rigo
источник
5
+1, это правильный ответ. Это добавочная смесь.
инженер
9

Один простой метод, который я знаю, состоит в том, чтобы визуализировать один раз, размывать результат, а затем снова визуализировать оригинальный острый объект сверху.

Это может быть сделано пиксельным шейдером фильтра Блума.

Джордаан Милонас
источник