Changeset 13041 for OpenSceneGraph/trunk/src/osgParticle/ModularEmitter.cpp
- Timestamp:
- 03/21/12 18:36:20 (14 months ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
OpenSceneGraph/trunk/src/osgParticle/ModularEmitter.cpp
r11687 r13041 12 12 { 13 13 } 14 14 15 15 osgParticle::ModularEmitter::ModularEmitter(const ModularEmitter& copy, const osg::CopyOp& copyop): 16 16 Emitter(copy, copyop), 17 17 _numParticleToCreateMovementCompensationRatio(copy._numParticleToCreateMovementCompensationRatio), 18 _counter(static_cast<Counter *>(copyop(copy._counter.get()))), 19 _placer(static_cast<Placer *>(copyop(copy._placer.get()))), 18 _counter(static_cast<Counter *>(copyop(copy._counter.get()))), 19 _placer(static_cast<Placer *>(copyop(copy._placer.get()))), 20 20 _shooter(static_cast<Shooter *>(copyop(copy._shooter.get()))) 21 21 { … … 52 52 float distance = (currentPosition-previousPosition).length(); 53 53 54 float size = getUseDefaultTemplate() ? 54 float size = getUseDefaultTemplate() ? 55 55 getParticleSystem()->getDefaultParticleTemplate().getSizeRange().minimum : 56 56 getParticleTemplate().getSizeRange().minimum; … … 62 62 n = osg::maximum(n, int(rounded_down) + (((float) rand() < remainder * (float)RAND_MAX) ? 1 : 0)); 63 63 } 64 64 65 65 for (int i=0; i<n; ++i) 66 66 { … … 70 70 _placer->place(P); 71 71 _shooter->shoot(P); 72 72 73 73 // Now need to transform the position and velocity because we having a moving model. 74 74 float r = ((float)rand()/(float)RAND_MAX); 75 75 P->transformPositionVelocity(emitterToPs, prevEmitterToPs, r); 76 76 //P->transformPositionVelocity(ltw); 77 77 78 78 if (cps) P->setUpTexCoordsAsPartOfConnectedParticleSystem(cps); 79 79 80 80 } 81 81 else
