preat
%Europe/Berlin %846 %2006, 21:18
ik ben bezig met een particle generator (soort stukjes stof die in een random richting rond je scherm zweven).
de code zover nuttig:
class as.snow {
var amountParticles:Number = 20;
var maxSize:Number = 4;
var maxSpeed:Number = .5;
function spawnItem (obj) {
for(var i:Number = 0; i < amountParticles; i++) {
obj.duplicateMovieClip(obj._name+"_"+i, 10+i);
var t:String = obj._name+"_"+i;
//init position
_root[t]._x = Math.random()*Stage.width;
_root[t]._y = Math.random()*Stage.height;
//define depth
var thisDepth:Number = Math.random()*5;
_root[t]._width = _root[t]._height = thisDepth*maxSize;
_root[t]._alpha = 100 - (thisDepth * 18);
//define motion
_root[t].dir = Math.random()*(Math.PI*2);
_root[t].speed = Math.random()*maxSpeed;
_root[t].onEnterFrame = function () {
this._x += (Math.cos(this.dir))*this.speed;
this._y += (Math.sin(this.dir))*this.speed;
}
}
}
}
nu heb ik 3 vragen;
ten eerste moet het een beetje als achtergrond scriptje draaien, dus moet de cpu usage zo minimaal mogelijk zijn, hoe kan ik dit script erop optimaliseren?
ten tweede wil ik dat zodra die uit je stage is dat je vlokje weer terug gaat in de tegenovergestelde richting (ik wil het eigenlijk zonder if() doen om cpu usage weer laag te houden), hoe realiseer ik dit?
en als laatste; kan ik die _root[t] vermijden? zover ik weet is _root altijd slecht om te gebruiken...ofzo, en this en _parent lijken niet echt te werken...
de code zover nuttig:
class as.snow {
var amountParticles:Number = 20;
var maxSize:Number = 4;
var maxSpeed:Number = .5;
function spawnItem (obj) {
for(var i:Number = 0; i < amountParticles; i++) {
obj.duplicateMovieClip(obj._name+"_"+i, 10+i);
var t:String = obj._name+"_"+i;
//init position
_root[t]._x = Math.random()*Stage.width;
_root[t]._y = Math.random()*Stage.height;
//define depth
var thisDepth:Number = Math.random()*5;
_root[t]._width = _root[t]._height = thisDepth*maxSize;
_root[t]._alpha = 100 - (thisDepth * 18);
//define motion
_root[t].dir = Math.random()*(Math.PI*2);
_root[t].speed = Math.random()*maxSpeed;
_root[t].onEnterFrame = function () {
this._x += (Math.cos(this.dir))*this.speed;
this._y += (Math.sin(this.dir))*this.speed;
}
}
}
}
nu heb ik 3 vragen;
ten eerste moet het een beetje als achtergrond scriptje draaien, dus moet de cpu usage zo minimaal mogelijk zijn, hoe kan ik dit script erop optimaliseren?
ten tweede wil ik dat zodra die uit je stage is dat je vlokje weer terug gaat in de tegenovergestelde richting (ik wil het eigenlijk zonder if() doen om cpu usage weer laag te houden), hoe realiseer ik dit?
en als laatste; kan ik die _root[t] vermijden? zover ik weet is _root altijd slecht om te gebruiken...ofzo, en this en _parent lijken niet echt te werken...