Как средствами JavaScript создать лучи света (canvas, LibCanvas)?

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

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

qaT4BjhjfJI.jpg

Но встала необходимость сделать множество подобных лучей (пару тысяч за раз), что очень сильно сказывается на производительности.
По скольку поведение лучей, а значит и их длинна/прозрачность/направление очень хаотичны - вариант с копипастой из виртуального холста отпадает, да и памяти бы съел такой вариант многовато.

Знает ли кто иные, более щадящие ресурсы методы?
  • Вопрос задан
  • 3400 просмотров
Пригласить эксперта
Ответы на вопрос 1
IonDen
@IonDen
JavaScript developer. IonDen.com
Обратите внимание на www.svgjs.com и на raphaeljs.com
эти библиотеки сильно упрощают разработку графических эффектов подобно вашему и них есть отличное сообщество где вам с большей вероятностью ответят/подскажут нужный способ или туториал.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы