Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 12-12-2006, 15:25   #1 (permalink)
Neuer User
 
Registriert seit: May 2006
Beiträge: 23
Question PIXEL Explosion + Performance

Moin,

ich hab gerade ne Pixel Explosion geschrieben... soll heißen dass sich Kästchen von der Mitte der Stage nach aussen bewegen und dabei größer werden... soweit so gut...
momentan wird die ganze Bewegung aller kreise über ein onEnterframe Prozedur gesteuert.... Das Problem ist das die Bewegung manchmal ganz schön ins stottern kommt ...
ich hoffe ihr habt nen tipp wie ich die Bewegung flüssiger bekomme.

Danke Unbenannt

AS:

function pixelBG(){
// INIT PIXEL BG
_root.pixelBGArr = new Array();
StageW = Stage.width;
StageH = Stage.height;
pixelBGSpeed = 3;
pixelBGSpeedVar = 15;
rsizeVar = 40;
pixelSize = 60;
d=0;
//INIT END
for(sw=0;sw<StageW/pixelSize;sw++){
for(sh=0;sh<StageH/pixelSize;sh++){
_root.maskBG.attachMovie("pixelBGMC","pixelBGMC"+d ,d);
_root.maskBG["pixelBGMC"+d]._x = StageW/2;
_root.maskBG["pixelBGMC"+d]._y = StageH/2;
_root.maskBG["pixelBGMC"+d]._xscale = 1;
_root.maskBG["pixelBGMC"+d]._yscale = 1;
_root.pixelBGArr.push({mcName: "pixelBGMC"+d, xziel:sw*pixelSize, yziel: sh*pixelSize, rsize: random(rsizeVar)+100, speed: random(pixelBGSpeedVar)+pixelBGSpeed, ok: false})
d++
}
}
_root.maskBG.onEnterFrame = function(){
cok = 0;
for(i=0;i<_root.pixelBGArr.length;i++){
xok = false;
yok = false;

_root.maskBG[_root.pixelBGArr[i].mcName]._x += (_root.pixelBGArr[i].xziel - _root.maskBG[_root.pixelBGArr[i].mcName]._x)/_root.pixelBGArr[i].speed;
_root.maskBG[_root.pixelBGArr[i].mcName]._y += (_root.pixelBGArr[i].yziel - _root.maskBG[_root.pixelBGArr[i].mcName]._y)/_root.pixelBGArr[i].speed;
_root.maskBG[_root.pixelBGArr[i].mcName]._xscale += (_root.pixelBGArr[i].rsize - _root.maskBG[_root.pixelBGArr[i].mcName]._xscale)/_root.pixelBGArr[i].speed;
_root.maskBG[_root.pixelBGArr[i].mcName]._yscale += (_root.pixelBGArr[i].rsize - _root.maskBG[_root.pixelBGArr[i].mcName]._yscale)/_root.pixelBGArr[i].speed;

if(_root.pixelBGArr[i].xziel >= StageW/2){
if(Math.round(_root.maskBG[_root.pixelBGArr[i].mcName]._x) <= _root.pixelBGArr[i].xziel){ xok=true };
}
else{
if(Math.round(_root.maskBG[_root.pixelBGArr[i].mcName]._x) <= _root.pixelBGArr[i].xziel){ xok=true }
}

if(_root.pixelBGArr[i].yziel >= StageW/2){
if(Math.round(_root.maskBG[_root.pixelBGArr[i].mcName]._y) <= _root.pixelBGArr[i].yziel){ yok=true };
}
else{
if(Math.round(_root.maskBG[_root.pixelBGArr[i].mcName]._y) <= _root.pixelBGArr[i].yziel){ yok=true };
}


if(xok==true && yok==true){
cok++
trace("COK: "+cok);
trace("ARR LENGTH: "+_root.pixelBGArr.length);

}
if(cok==_root.pixelBGArr.length){
trace("KILL ON ENTER FRAME");
_root["bg"+_root.numOfNewBG].setMask(null);
for(i=0;i<_root.pixelBGArr.length;i++){
removeMovieClip(_root.maskBG[_root.pixelBGArr[i].mcName]);
}

delete _root.pixelBGArr;
delete _root.maskBG.onEnterFrame;
}
}
}
}
unbenannt ist offline   Mit Zitat antworten
Alt 12-12-2006, 15:57   #2 (permalink)
Flashbitch
 
Benutzerbild von X-Tender
 
Registriert seit: Oct 2003
Ort: Hannover
Beiträge: 279
liegt es wahrscheinlich an deinem mörder array das du on enterframe durchratterst ...
__________________
Fuchtelworld
X-Tender ist offline   Mit Zitat antworten
Alt 13-12-2006, 10:02   #3 (permalink)
Neuer User
 
Registriert seit: May 2006
Beiträge: 23
Danke für deine Antwort... ich hab die Daten (xziel etc.) jetzt in die jeweiligen Objekte gespeichert und die Geschichte läuft schon wesentlich flüssiger... Danke

Grüße Unbenannt
unbenannt ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 00:55 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele