So, falls es noch jemand interessiert... Habe es jetzt so gemacht und es funktioniert wunderbar:

Code:
var radius = 40;

function particle_move(PARTICLE *p)
{	
	p.x = radius * sinv((p.lifespan/2)) * cosv(p.lifespan+p.skill_a);
	p.y = radius * sinv((p.lifespan/2)) * sinv(p.lifespan+p.skill_a);
	p.z = -radius * cosv((p.lifespan/2))+42;
	p.lifespan -= p.skill_b * time_step;
}
 
function particle_init(PARTICLE *p)
{
	p.lifespan = 360;
	p.alpha = 40+random(60);
	p.bmap = snow_map;
	p.size = 1+random(3);
	p.vel_x = 0;
	p.vel_y = 0;
	p.vel_z = 0;
	p.flags = MOVE;
	p.event = particle_move;
	p.skill_a = random(360);
	p.skill_b = 1+random(3);
}
 
function create_particle()
{
  while(actor == NULL) {wait (1);}
  while(1)
  {
     effect(particle_init, 1, vector(actor.x, actor.y, actor.z+45), normal);
     wait(1);
  }
}


Last edited by Dragonfly; 05/26/14 15:39.

Errors are the engine of progress.

Version: A8 Commercial
OS: Win 7 64bit
Models: Cinema 4D