Реалистичный метеорит на HTML5 Canvas

Неплохо анимированный метеорит на HTML5 Canvas
Для начала посмотрите ДЕМО
Установка:
1#: В самый низ вашего CSS вставьте:
2#: После открывающего тега <body> вставьте:
Разместил:
Apocalypse
Опубликовано:
Неплохо анимированный метеорит на HTML5 Canvas
Для начала посмотрите ДЕМО
Установка:
1#: В самый низ вашего CSS вставьте:
1 2 3 4 5 6 |
canvas { background: #000; display: block; margin: 0 auto; height: 400px; } |
2#: После открывающего тега <body> вставьте:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
<canvas id='canvas'></canvas> <script type="text/javascript"> var canvas = document.getElementById('canvas'); var ctx = canvas.getContext('2d'); var particles = []; var particle_count = 200; for(var i=0; i<particle_count; i++){ particles.push(new particle()); } function loop() { requestAnimationFrame(loop); draw(); } function particle() { this.loc = {x:canvas.width/2,y:canvas.height/2 + 50}; this.speed = {x: Math.random()*5,y:-15+Math.random()*10}; this.radius = 10+Math.random()*12; this.life = 15+Math.random()*8; this.remaining_life = this.life; this.color = {}; this.color.r=Math.floor(Math.random()*255); this.color.g=Math.floor(Math.random()*25); this.color.b=Math.floor(Math.random()*25); } function draw() { ctx.globalCompositeOperation = 'source-over'; ctx.fillStyle = '#000'; ctx.fillRect(0,0,canvas.width,canvas.height); ctx.globalCompositeOperation = 'lighter'; for(var i=0; i<particles.length; i++){ var p = particles[i]; ctx.beginPath(); p.opacity = Math.round(p.remaining_life/ p.life*100)/100; var gradient = ctx.createRadialGradient(p.loc.x, p.loc.y, 0, p.loc.x, p.loc.y, p.radius); gradient.addColorStop(0, "rgba(" + p.color.r + "," + p.color.g + "," + p.color.b + "," + p.opacity + ")" ); gradient.addColorStop(0.5, "rgba(" + p.color.r + "," + p.color.g + "," + p.color.b + "," + p.opacity + ")" ); gradient.addColorStop(1, "rgba(" + p.color.r + "," + p.color.g + "," + p.color.b + ", 0)" ); ctx.fillStyle = gradient; ctx.arc(p.loc.x, p.loc.y, p.radius, 0, Math.PI*2, false); ctx.fill(); p.remaining_life--; p.radius--; p.loc.x += p.speed.x; p.loc.y += p.speed.y; if(p.remaining_life<0 || p.radius <0){ particles[i] = new particle(); } } } loop(); </script> |
Метки: FireHTML5MeteoriteМетеоритПламяЭффект
Apocalypse
Я не понял вашего вопроса, но постараюсь на него ответить...
Разместил: Apocalypse
- Apocalypse 8 ноября 2017 Last modified 2 сентября 2018
Разместил: Apocalypse
- Apocalypse 30 апреля 2016
Новый комментарий от пользователя Эдуард: «Забыл добавить. Снег появляется то в футере (когда ставил перед закрывающим тегом body), то наоборот почему-то в самом верху (причем сам блог сдвигался вниз), когда ставил его после открывающего тега, как было указано в статье.» в материале Приятный Новогодний снежок на HTML5 Canvas
Новый комментарий от пользователя Acıbadem su kaçak tespiti: «Acıbadem su kaçak tespiti Kadıköy su kaçağı tespiti: Kadıköy’deki su sızıntılarında noktasal tespit için yanınızdayız. https://www.grand-indonesia.com/author/kacak/» в материале Фон из анимированных самолётов на CSS3
Новый комментарий от пользователя elavil for anxiety reviews: «elavil for anxiety reviews
elavil for anxiety reviews» в материале Крутой анимированный индикатор загрузки в виде снежка на CSS3
Новый комментарий от пользователя how long can you take elavil: «how long can you take elavil
how long can you take elavil» в материале След за курсором из частиц на HTML5 Canvas
Привет. Может кто-нибудь знает почему не получается зайти на сайт playstation через vpn и как это исправить? Без vpn захожу на сайт, но не могу зарегать акк.
Ошибка:
Страница недоступна
Сайт playstation.com не отправил данных.
ERR_EMPTY_RESPONSE
@stalker1313, Привет. Возможно впн блочит их сайт. Попробовал со своим личным впном - сайт открывается
Информация
Пн | Вт | Ср | Чт | Пт | Сб | Вс |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 |
background: #000; не действивелен ( фон всегда черный а хотелось бы прозрачный если можно :"D
Там еще в js указан фон #000. Можно указать rgba по идеи