| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Linksaußen Registriert seit: Jun 2003 Ort: Essen
Beiträge: 552
| wie steigere ich die Performance
Ich bin gerade dabei eine Art Spiel für eine Firma zu entwickeln. hier findet ihr einen abgespeckten Dummy eines Teils davon. Die Walze wird durch gewisse Ereignisse in Bewegung gesetzt und dreht sich dann wieder zurück. Dies hier ist der betreffende Code: ("allfields" sind je die drei Felder in einer Höhe) PHP-Code: Ich würde mich freuen, wenn ihr euch das Beispiel angucken würdet und mir sagen könntet, wie ich einen ähnlichen Effekt CPU-schonender programmieren könnte... p.s. ie Framerate ist auf 24 fps eingestellt
__________________ Der Ball ist rund Geändert von Fralle (09-11-2005 um 13:40 Uhr) |
| | |
| | #2 (permalink) |
| muh Registriert seit: Apr 2002 Ort: Freiburg / Stuttgart
Beiträge: 4.338
|
z.B. in der Schleife nicht immer this[mc] schreiben, sondern einmal am Anfang var ref = this[mc] schreiben, dann kannst du immer ref als MovieClip nehmen. dann erstmal das hier zwischenspeichern: angle = DegToRad(deltagrad*this[mc].num+this[mc].t) Fuer die Positionsberechnung kønntest du auch Matrizen nehmen, aber das wære vielleicht etwas uebertrieben.
__________________ »Carpe diem«, sagte der Graf. (Terry Pratchett: Ruhig Blut!) |
| | |
| | #3 (permalink) |
| using namespace Registriert seit: May 2002 Ort: Hamburg underground
Beiträge: 657
| Code: walzenausgleich.onEnterFrame = function() {
if (walzenmove) {
dreheWalze();
}
Ausgleich();
}; gruß |
| | |
| | #4 (permalink) | |
| Linksaußen Registriert seit: Jun 2003 Ort: Essen
Beiträge: 552
| Zitat:
aber was genau bringt es, this.[mc] zu ersetzen? Die Funktion sieht jetzt so aus: PHP-Code:
__________________ Der Ball ist rund | |
| | |
| | #5 (permalink) | |
| Linksaußen Registriert seit: Jun 2003 Ort: Essen
Beiträge: 552
| Zitat:
Also müßten alle Funktionen, die sowieso nur einmalig aufgerufen werden, immer dorthin geschoben werden, wo sie gebraucht werden? wie verhält es sich eigentlich mit Variablen die über _parent oder _parent._parent etc. angesprochen werden? Raubt das auch schon Zeit? Bei mir ist es meistens so, daß der AS-Code sich (aus Gründen der Bequemlichkeit) gerne und oft verschachtelt.
__________________ Der Ball ist rund Geändert von Fralle (09-11-2005 um 17:09 Uhr) | |
| | |
| | #6 (permalink) | ||
| using namespace Registriert seit: May 2002 Ort: Hamburg underground
Beiträge: 657
| Zitat:
OOP sucks! beispiel: Zitat:
Geändert von artjom (09-11-2005 um 17:55 Uhr) | ||
| | |
| | #7 (permalink) |
| Linksaußen Registriert seit: Jun 2003 Ort: Essen
Beiträge: 552
|
okay, da sind ja schon 50% drin! in dem Thread hab' ich gelesen, daß auch jeder Punkt was frisst. Also möglichst keine _root.'s oder _parent.'s und so verwenden... da muss ich aber mal ganz schön durch den Code durcharbeiten und 'ne Menge ändern...
__________________ Der Ball ist rund |
| | |
| | #8 (permalink) |
| Linksaußen Registriert seit: Jun 2003 Ort: Essen
Beiträge: 552
|
Wie sieht's eigentlich mit Funktionen, die gar nicht aufgerufen werden oder //Kommentaren aus? Ist ja für's PRG überflüssiger Code. Dürfte doch eigentlich nicht stören, oder etwa doch?! Wie verhält es sich mit der Grafik? -siehe Anhang- beides ist je ein MC, braucht es mehr Performance den farbigen zu bewegen?
__________________ Der Ball ist rund Geändert von Fralle (09-11-2005 um 19:06 Uhr) |
| | |
| | #10 (permalink) |
| Linksaußen Registriert seit: Jun 2003 Ort: Essen
Beiträge: 552
|
nochmal zu den Funktionen oben: (var felder = 14) Das ganze bewegt sich erst, wenn die var "yversatz" geändert wird (was bei gewissen Ereignissen der Fall ist) Das habe ich jetzt mal geändert. vorher: yversatz += 10 nacher: //yversatz +=10 Alles läuft wie vorher, nur wird die Walze nicht mehr bewegt. vorher hatte das ganze bei mir eine durchschnittliche fps von ~13 und jetzt ohne Bewegung ~17 hm...wat nu?
__________________ Der Ball ist rund |
| | |
| | #11 (permalink) |
| Linksaußen Registriert seit: Jun 2003 Ort: Essen
Beiträge: 552
|
schade, daß keiner mehr antwortet... brauche immer noch Hilfe! hier nochmal ein Update des Walzen-Codes: PHP-Code: nochmal kurz zur Erläuterung: durch zwei andere Ereignisse wird yversatz += 10; bzw. yversatz -= 10; ausgeführt, wodurch die Walzenbewegung ausgelöst wird. ("allfields"+i sind immer 3 nebeneinanderliegende Felder) Wer hat noch Ideen, wie man das ganze vereinfachen und somit schneller machen kann?!
__________________ Der Ball ist rund |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |