History

made some extra checks for bogus data coming in, and added more particle effects to rave glove hand

Jeffrey Ventrella committed 13 years ago

Commit 2f28f3e1 parent f85690c2 files · +133 −42Browse files

Showing the changes to interface/src/ParticleSystem.cpp (1 of 2 files). Show all

Unified · Split

interface/src/ParticleSystem.cpp+37−28
@@ -367,12 +367,9 @@ void ParticleSystem::renderParticle(int p) { · 366 unmodified lines
367 367
368 v /= distance;368 v /= distance;
369 369
370 glm::vec3 up = glm::normalize(glm::cross(v, _upDirection));370 glm::vec3 up = glm::normalize(glm::cross(v, _upDirection)) * _particle[p].radius;
371 glm::vec3 right = glm::normalize(glm::cross(up, v));371 glm::vec3 right = glm::normalize(glm::cross(up, v )) * _particle[p].radius;
372 372
373 right *= _particle[p].radius;
374 up *= _particle[p].radius;
375
376 glm::vec3 p0Left = _particle[p ].position - right;373 glm::vec3 p0Left = _particle[p ].position - right;
377 glm::vec3 p0Right = _particle[p ].position + right;374 glm::vec3 p0Right = _particle[p ].position + right;
378 glm::vec3 p0Down = _particle[p ].position - up;375 glm::vec3 p0Down = _particle[p ].position - up;
@@ -383,28 +380,40 @@ void ParticleSystem::renderParticle(int p) { · 4 unmodified lines
383 glm::vec3 ppDown = _particle[pp].position - up;380 glm::vec3 ppDown = _particle[pp].position - up;
384 glm::vec3 ppUp = _particle[pp].position + up;381 glm::vec3 ppUp = _particle[pp].position + up;
385 382
386 glBegin(GL_TRIANGLES); 383 glBegin(GL_TRIANGLES);
387 glVertex3f(p0Left.x, p0Left.y, p0Left.z ); 384
388 glVertex3f(p0Right.x, p0Right.y, p0Right.z ); 385 glVertex3f(p0Left.x, p0Left.y, p0Left.z );
389 glVertex3f(ppLeft.x, ppLeft.y, ppLeft.z ); 386 glVertex3f(p0Right.x, p0Right.y, p0Right.z );
390 glEnd();387 glVertex3f(ppLeft.x, ppLeft.y, ppLeft.z );
391 388
392 glBegin(GL_TRIANGLES); 389 glVertex3f(p0Right.x, p0Right.y, p0Right.z );
393 glVertex3f(p0Right.x, p0Right.y, p0Right.z ); 390 glVertex3f(ppLeft.x, ppLeft.y, ppLeft.z );
394 glVertex3f(ppLeft.x, ppLeft.y, ppLeft.z ); 391 glVertex3f(ppRight.x, ppRight.y, ppRight.z );
395 glVertex3f(ppRight.x, ppRight.y, ppRight.z ); 392
396 glEnd();393 glVertex3f(p0Up.x, p0Up.y, p0Up.z );
397 394 glVertex3f(p0Down.x, p0Down.y, p0Down.z );
398 glBegin(GL_TRIANGLES); 395 glVertex3f(ppDown.x, ppDown.y, ppDown.z );
399 glVertex3f(p0Up.x, p0Up.y, p0Up.z ); 396
400 glVertex3f(p0Down.x, p0Down.y, p0Down.z ); 397 glVertex3f(p0Up.x, p0Up.y, p0Up.z );
401 glVertex3f(ppDown.x, ppDown.y, ppDown.z ); 398 glVertex3f(ppUp.x, ppUp.y, ppUp.z );
402 glEnd();399 glVertex3f(ppDown.x, ppDown.y, ppDown.z );
403 400
404 glBegin(GL_TRIANGLES); 401 glVertex3f(p0Up.x, p0Up.y, p0Left.z );
405 glVertex3f(p0Up.x, p0Up.y, p0Up.z ); 402 glVertex3f(p0Right.x, p0Right.y, p0Right.z );
406 glVertex3f(ppUp.x, ppUp.y, ppUp.z ); 403 glVertex3f(p0Down.x, p0Down.y, p0Down.z );
407 glVertex3f(ppDown.x, ppDown.y, ppDown.z ); 404
405 glVertex3f(p0Up.x, p0Up.y, p0Left.z );
406 glVertex3f(p0Left.x, p0Left.y, p0Left.z );
407 glVertex3f(p0Down.x, p0Down.y, p0Down.z );
408
409 glVertex3f(ppUp.x, ppUp.y, ppLeft.z );
410 glVertex3f(ppRight.x, ppRight.y, ppRight.z );
411 glVertex3f(ppDown.x, ppDown.y, ppDown.z );
412
413 glVertex3f(ppUp.x, ppUp.y, ppLeft.z );
414 glVertex3f(ppLeft.x, ppLeft.y, ppLeft.z );
415 glVertex3f(ppDown.x, ppDown.y, ppDown.z );
416
408 glEnd();417 glEnd();
409 } 418 }
410 } 419 }