@@ -75,7 +75,7 @@ function generate(type){
75
75
PARTICLE_SIZE :PARTICLE_SIZE ,
76
76
DEAD_PARTICLE :DEAD_PARTICLE ,
77
77
SHADOW_BLUR :SHADOW_BLUR
78
- } ) ;
78
+ } ) ;
79
79
}
80
80
81
81
window . onload = function ( ) {
@@ -133,7 +133,7 @@ window.onload = function() {
133
133
controller_dead_particle . onChange ( function ( value ) {
134
134
DEAD_PARTICLE = value ;
135
135
} ) ;
136
- var controller_shadow_blur = gui . add ( text , 'shadow_blur' , 0 , 10 ) ;
136
+ var controller_shadow_blur = gui . add ( text , 'shadow_blur' , 0 , 10 ) ;
137
137
controller_shadow_blur . onFinishChange ( function ( value ) {
138
138
SHADOW_BLUR = Math . round ( value ) ;
139
139
} ) ;
@@ -215,11 +215,14 @@ function init(){
215
215
mousePosY = mousePos . y ;
216
216
} , false ) ;
217
217
218
- for ( var i = 0 ; i < MAX_PARTICLES ; i ++ ) {
218
+ generateParticles ( ) ;
219
+ animate ( ) ;
220
+ }
221
+
222
+ function generateParticles ( ) {
223
+ for ( var i = 0 ; i < MAX_PARTICLES ; i ++ ) {
219
224
particleArray . push ( createParticle ( ) ) ;
220
225
}
221
-
222
- animate ( ) ;
223
226
}
224
227
225
228
function draw ( ) {
@@ -242,25 +245,30 @@ function draw(){
242
245
particle_color = "rgba(" + hexToR ( particle_color ) + ", " + hexToG ( particle_color ) + ", " + hexToB ( particle_color ) + ", " + OPACITY + ")" ;
243
246
}
244
247
248
+ c . beginPath ( ) ;
249
+
250
+ c . lineWidth = STROKE_SIZE ;
251
+ c . fillStyle = particle_color ;
245
252
246
253
if ( SHADOW_BLUR > 0 ) {
247
254
c . shadowBlur = SHADOW_BLUR ;
248
255
c . shadowOffsetX = 1 ;
249
256
c . shadowOffsetY = 1 ;
250
257
c . shadowColor = "rgba(100, 100, 100, 1)" ;
258
+ } else {
259
+ c . shadowBlur = null ;
260
+ c . shadowOffsetX = 0 ;
261
+ c . shadowOffsetY = 0 ;
262
+ c . shadowColor = "rgba(100, 100, 100, 0)" ;
251
263
}
252
264
253
- c . lineWidth = STROKE_SIZE ;
254
- c . fillStyle = particle_color ;
255
- c . beginPath ( ) ;
256
-
257
265
var particle_stroke_color = "rgba(" + hexToR ( STROKE_COLOR ) + ", " + hexToG ( STROKE_COLOR ) + ", " + hexToB ( STROKE_COLOR ) + ", " + OPACITY + ")" ;
266
+ c . strokeStyle = particle_stroke_color ;
258
267
259
268
switch ( TYPE_PARTICLE ) {
260
269
case 'rect' :
261
270
c . fillRect ( particle . x , particle . y , particle . size , particle . size ) ;
262
271
if ( STROKE_SIZE > 0 ) {
263
- c . fillStyle = particle_stroke_color ;
264
272
c . strokeRect ( particle . x , particle . y , particle . size , particle . size ) ;
265
273
}
266
274
break ;
@@ -269,17 +277,16 @@ function draw(){
269
277
c . arc ( particle . x , particle . y , radius , 0 , 2 * Math . PI , false ) ;
270
278
c . fill ( ) ;
271
279
if ( STROKE_SIZE > 0 ) {
272
- c . strokeStyle = particle_stroke_color ;
273
280
c . stroke ( ) ;
274
281
}
275
282
break ;
276
283
case 'triangle' :
277
284
c . moveTo ( particle . x , particle . y ) ;
278
285
c . lineTo ( particle . x + ( particle . size * 2 ) , particle . y ) ;
279
286
c . lineTo ( particle . x + particle . size , particle . y - particle . size ) ;
287
+ c . lineTo ( particle . x , particle . y ) ;
280
288
c . fill ( ) ;
281
289
if ( STROKE_SIZE > 0 ) {
282
- c . strokeStyle = particle_stroke_color ;
283
290
c . stroke ( ) ;
284
291
}
285
292
break ;
@@ -296,7 +303,6 @@ function draw(){
296
303
particleArray [ i ] = createParticle ( ) ;
297
304
}
298
305
} else {
299
-
300
306
if ( particle . x < - ( particle . size ) ||
301
307
particle . y < - ( particle . size ) ||
302
308
particle . x > window . innerWidth + particle . size ||
0 commit comments