Войти
ПрограммированиеФорум2D графика и изометрия

Создание 2D эффекта молнии в OpenGL

#0
23:05, 19 июня 2012

Используя 2D - quads, в ортогональной проекции (OpenGL) нужно создать эффект цепной молнии, состоящей из N частей. (на подобии Warcraft 3 - Chain Lightning).
Какие лучше всего текстуры использовать и как правильно обновлять молнию?

Молния (с текстурой M x M) должна попадать в объект A и потом отражаться в объект B, находящийся на неопределенной дистанции (как короткой, так и длинной) от A.
Вся проблема сводится к построению молнии любой длины, имея текстуру молнии (может и несколько), а так же правильному обновлению эффекта для большей реалистичности.


#1
0:27, 20 июня 2012

текстура: полоска в центре более яркая и не прозрачная по краям прозрачная и более темная
теперь разбиваем пространство на N сегментов.
получившимся всем не крайним точкам делаем рандомное небольшое смешение перпендикулярно первоначальному отрезку
теперь рисуем квады с нашей текстурой между получившимися точками.
наша молния готова.
еще можно на первой и последней точки вешаем круги (точка в центре яркая и не прозрачная чем дальше от центра тем прозрачнее и темнее).
иногда перегенерируем молнию что бы получить анимацию

примерно так. может и напутал где чего но алгоритм такой. в гоблин ган похожим образом делал. в нете гдето есть тутор по которому делал но вряд ли уже найду.
еще можешь посмотреть пример из юнити. там где то была у них молния. она 3д но это не важно главное алгоритм.

#2
8:52, 5 июля 2012

Шейдер на HLSL

#3
12:39, 5 июля 2012

http://www.gamedev.ru/code/forum/?id=138661

ПрограммированиеФорум2D графика и изометрия

Тема в архиве.