For-Schleifen Zusammenfassen?
Übersicht

![]() |
KabelbinderSieger des WM-Contest 2006Betreff: For-Schleifen Zusammenfassen? |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi
Wenn nun in einem Spiel pro durchlauf der Hauptschleife mehrere Aufgaben durch Funtionen ausgeführt werden, die je aus einer For-Schleife bestehen, die z.B. Dimfeld-Einträge überprüfen und setzen, kann man da etwas speed einspahren, indem man statt vielen kleinen Funtionen (Vielen kleinen For-Schleifen) einfach eine großen macht? also statt so Code: [AUSKLAPPEN] Function anim()
for i = 0 to max >animieren< next end function Function schieb() for i = 0 to max >verschieben< next end function Function coll() for i = 0 to max >kollisionen abfragen< next end function so Code: [AUSKLAPPEN] Function alles() for i = 0 to max >animieren< >verschieben< >kollisionen abfragen< next würde die untere Function hier schneller ablaufen, als die oberen drei hintereinander? |
||
<Wing Avenger Download> ◊◊◊ <Macrophage Download> |
![]() |
Christoph |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] Function alles()
for i = 0 to max >animieren< >verschieben< >kollisionen abfragen< next Wenn du noch ein End function hinsetzt könnte es klappen. Ich glaub dass die zweite Variante schneller läuft. for i=0 to max for i=0 to max for i=0 to max ersetzt durch for i=0 to max Das heißt du ersetzt drei (langsame) Schleifen durch eine und drei Funktionen (die aufzurufen usw. kostet ja auch Zeit) durch eine. ->Schneller (aber nicht viiieeel schneller ![]() |
||
![]() |
aMulSieger des Minimalist Compo 01/13 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ein wenig schneller ist es sicherlich. aber es könnte natürlich dann zu ungewünschten "Effekten"(Fehlern) kommen, da die Reihenfolge verändert wurde. Kommt natürlich auch auf den deinen Code an. ![]() MfG |
||
Panic Pong - ultimate action mashup of Pong and Breakout <= aktives Spiele-Projekt, Downloads mit vielen bunten Farben!
advASCIIdraw - the advanced ASCII art program <= aktives nicht-Spiele-Projekt, must-have für ASCII/roguelike/dungeon-crawler fans! Alter BB-Kram: ThroughTheAsteroidBelt - mit Quelltext! | RGB-Palette in 32²-Textur / Farbige Beleuchtung mit Dot3 | Stereoskopie in Blitz3D | Teleport-Animation Screensaver |
![]() |
skey-z |
![]() Antworten mit Zitat ![]() |
---|---|---|
was man zusammenfassen kann und nicht zu unübersichtlich wird, sollte man auch zusammenfassen, wenn in deinem Fall, alle von 0 bis max gehen, dann ist es kein problem, wenn einige sachen weniger als max gehen, musst du noch ne bedingung setzen, ob die Teile noch ausgeführt werden sollen. | ||
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz BAC#57: 2. Platz |
![]() |
KabelbinderSieger des WM-Contest 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
thx @ all | ||
<Wing Avenger Download> ◊◊◊ <Macrophage Download> |
![]() |
PlasmaBetreff: hi |
![]() Antworten mit Zitat ![]() |
---|---|---|
kannst ja mal spasseshalber rolling loops machen
der speed kommt aber auf den cache der cpu an |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
skey-z hat Folgendes geschrieben: was man zusammenfassen kann und nicht zu unübersichtlich wird, sollte man auch zusammenfassen, wenn in deinem Fall, alle von 0 bis max gehen, dann ist es kein problem, wenn einige sachen weniger als max gehen, musst du noch ne bedingung setzen, ob die Teile noch ausgeführt werden sollen.
In dem Falle wäre das Zusammenfassen mehr schädlich als nützlich, da die IF bei jedem durchgang aufgerufen werden, was letztendlich mehr zeit kostet als einfach die loop seperat nochmal auszuführen. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group