void PContextSourceState_t::Color(const pDomain &cdom, const pDomain &adom) { delete PSS->Color; delete PSS->Alpha; PSS->Color = cdom.copy(); PSS->Alpha = adom.copy(); }
void PContextActions_t::Jet(const pDomain &dom, const pDomain &accel) { PAJet *A = new PAJet(); A->dom = dom.copy(); A->acc = accel.copy(); A->SetKillsParticles(false); A->SetDoNotSegment(false); PS->SendAction(A); }
void PContextActions_t::RandomRotVelocity(const pDomain &dom) { PARandomRotVelocity *A = new PARandomRotVelocity(); A->gen_vel = dom.copy(); A->SetKillsParticles(false); A->SetDoNotSegment(false); PS->SendAction(A); }
void PContextActions_t::RandomDisplace(const pDomain &dom) { PARandomDisplace *A = new PARandomDisplace(); A->gen_disp = dom.copy(); A->SetKillsParticles(false); A->SetDoNotSegment(false); PS->SendAction(A); }
void PContextActions_t::RandomAccel(const pDomain &dom) { PARandomAccel *A = new PARandomAccel(); A->gen_acc = dom.copy(); A->SetKillsParticles(false); A->SetDoNotSegment(false); PS->SendAction(A); }
void PContextActions_t::SinkVelocity(const bool kill_inside, const pDomain &dom) { PASinkVelocity *A = new PASinkVelocity(); A->velocity = dom.copy(); A->kill_inside = kill_inside; A->SetKillsParticles(true); A->SetDoNotSegment(false); PS->SendAction(A); }
void PContextActions_t::Source(const float particle_rate, const pDomain &dom) { PASource *A = new PASource(); A->position = dom.copy(); A->particle_rate = particle_rate; A->SrcSt.set(PS->SrcSt); A->SetKillsParticles(false); A->SetDoNotSegment(true); // WARNING: Particles aren't a function of other particles, but does affect the working sets optimizations PS->SendAction(A); }
void PContextActions_t::Avoid(const float magnitude, const float epsilon, const float look_ahead, const pDomain &dom) { PAAvoid *A = new PAAvoid(); A->position = dom.copy(); A->magnitude = magnitude; A->epsilon = epsilon; A->look_ahead = look_ahead; A->SetKillsParticles(false); A->SetDoNotSegment(false); PS->SendAction(A); }
void PContextActions_t::Bounce(const float friction, const float resilience, const float cutoff, const pDomain &dom) { PABounce *A = new PABounce(); A->position = dom.copy(); A->oneMinusFriction = 1.0f - friction; A->resilience = resilience; A->cutoffSqr = fsqr(cutoff); A->SetKillsParticles(false); A->SetDoNotSegment(false); PS->SendAction(A); }
void ParticleSystem::setVelocity(const pDomain &domain) { delete velocity; velocity = domain.copy(); }
void ParticleSystem::setColor(const pDomain &domain) { delete color; color = domain.copy(); }
void ParticleSystem::setPosition(const pDomain &domain) { delete position; position = domain.copy(); }
void PContextSourceState_t::VertexB(const pDomain &dom) { delete PSS->VertexB; PSS->VertexB = dom.copy(); }
void PContextSourceState_t::RotVelocity(const pDomain &dom) { delete PSS->RotVel; PSS->RotVel = dom.copy(); }
void PContextSourceState_t::UpVec(const pDomain &dom) { delete PSS->Up; PSS->Up = dom.copy(); }
void ParticleSystem::setRot(const pDomain &domain) { delete rot; rot = domain.copy(); }
void ParticleSystem::setSize(const pDomain &domain) { delete size; size = domain.copy(); }
void PContextSourceState_t::Size(const pDomain &dom) { delete PSS->Size; PSS->Size = dom.copy(); }