• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

Zeitkritische Aktionen

jonny65

Geomaster
Ausser dem bekannten "lass nicht zu viele Zonen gleichzeitig aktiv, weil das viel Rechenzeit kostet" sind noch andre Fälle bekannt, die im Hintergrund am Prozessor zehren ?
Besonders interessieren mich da die Tasks, die completed sind und im Taskmenü schlummern. Ich praktizier das, damit der Spieler sehen kann, was er schon gemacht hat.
Was viel Zeit kostet sind Moves hab ich schon gemekt, aber das kann man steuern, indem man nicht grad 10 Items hintereinander rumschiebt.
Oder sind andere (Standard-) Aktionen/Events bekannt, die rechenzeitintensiv sind (wie gesagt Urwigo Standard Dinge, keine Lua Spielchen).
 

izaseba

Geomaster
Zonen aktivieren/deaktivieren und sichtbar/unsichtbar machen läßt zumindest den Oregon in eine Bedenksekunde verfallen :???:

Wie es auf den Smartphones aussieht, kann ich leider nicht sagen.
 

kansu_makugen

Geocacher
izaseba schrieb:
Zonen aktivieren/deaktivieren und sichtbar/unsichtbar machen läßt zumindest den Oregon in eine Bedenksekunde verfallen :???:

Wie es auf den Smartphones aussieht, kann ich leider nicht sagen.

Smartphones sind ziemlich unkritisch. Bei denen kriegste die App (meiner Erfahrung nach) auch nur schwer zum Abstürzen.

Ansonsten kann ich leider nicht viel zum Thema beitragen, da ich keine Oregon o. ä. besitze.
 

kansu_makugen

Geocacher
Jonny65 schrieb:
Was viel Zeit kostet sind Moves
izaseba schrieb:
Zonen aktivieren/deaktivieren und sichtbar/unsichtbar machen läßt zumindest den Oregon in eine Bedenksekunde verfallen :???:

Dazu schmeiß ich gleich mal eine Frage in die Runde.
Legt ihr von Anfang an fest, welches Item in welcher Zone liegt oder schiebt ihr sie zur Laufzeit an Ort und Stelle? Ersteres wäre ja im Hinblick auf die Performance die bessre Lösung, da die Items bei Initialisierung schon "richtig liegen". Ich meine aber in irgendeinem der zahlreichen Tutorials gelesen zu haben, dass man Item Moves und Zonenaktivierungen etc besser zur Laufzeit macht (allerdings hat sich mein Gedächtnis in der Vergangenheit oft als nicht allzu zuverlässig erwiesen ;) ). Zonen sichtbar/aktiv machen geht sowieso in den meisten Fällen nur zur Laufzeit,

Also, irgendwelche Erfahrungen zu den Items?

Gruß
 

bodenseepingu

Geomaster
Das lässt sich so nicht beantworten - ich mach beides.

Items, die ganz klar in einer Zone liegen lege ich von Anfang an dort hin - teilweise auch bereits sichtbar, wenn es keine Vorbedingung gibt, daß das Item zuerst unsichtbar ist.

Manchmal verwende ich Items mehrfach - die bewege ich bei OnEnter in die Zone und verpasse ihnen auch meist noch einen passenderen Namen oder Description oder teilweise auch Bild.

Ich glaube noch nicht daran, daß Moves von Items viel Zeit brauchen - die Verwaltung in LUA von Items ist ziemlich trivial - Item aus der Table des einen Objekts nehmen und in die Table des anderen reinschreiben.
 

kansu_makugen

Geocacher
Klar, sinnvoll ist die Vorabzuordnung von Item zu Zone nur, wenn die Zone feststeht. Aber ich denke mal, dass es gerade auch schwächeren Geräten schon einen Unterschied macht, ob beim Betreten einer Zone 6 oder 7 items in die Zone gemoved und sichtbar gemacht werden oder sie es eben von vornherein schon sind. Außerdem spart es schreib (bzw. drag&drop) arbeit :)
 
OP
J

jonny65

Geomaster
Also bei mir liegen Items und Charaktere immer von Anfang an in der Zone, teilweise sichtbar oder auch unsichtbar. Die werden natürlich bei "Locations" platziert und nicht ins Startevent "Move X to Zone 1" so wie ichs bei den ersten Gehversuchen mit dem GS Builder gemacht hab (ich glaub da gehts nur so). Das moven kostet auf jeden Fall Rechenzeit. Ich lass bei einem Event mehrere Dinge verschwinden (Move X to none ...) und neue kommen ins Inventar. Also so 3 Sekunden Freeze hat man da auf jeden Fall...beim Oregon. Öhm, da fällt mir grad ein...besser Speicher verschwenden und das Item auf unsichtbar setzen anstatt Move to none ? Ich habs halt gern aufgeräumt, auch im "Hintergrund" :/
Wobei man ja übers Speicherhandling auch nix weiß... ob der Speicher freigegeben wird wenn man ein Item löscht und ob das irgendeinen Einfluss hat auf die Performance.
 

bodenseepingu

Geomaster
Also Items löschen geht definitiv nicht - ein Move X to None führt ja nicht dazu, daß das Item gelöscht wird und der Speicher aufgeräumt wird - man kann ja schließlich Items aus 'None' wieder irgendwo hinschieben - genausowenig werden irgendwelche anderen Objekte wie Charactere, Zonen oder Tasks einer Cartridge gelöscht, wenn sie nicht mehr gebraucht werden. Lokale Variablen, lokale Tables sind Kandidaten fürs Speichermanagement.

Wenn man den Source-Code einer Urwigo-Cartridge anschaut, dann sieht man, daß alle Objekte wie Zonen, Items, Charactere, Tasks, Inputs, Timer einmal angelegt werden als globale Objekte und nicht wieder gelöscht werden.

Meldungen und Dialoge hingegen sind dynamisch, hier muss zuerst mal instantiiert werden und dann auch wieder aufgeräumt werden.

Ich werd gelegentlich nochmal das Koffer-Beispiel anschauen - da kann ich 20 Items, die ich in den Koffer gepackt habe auf einmal wieder auspacken - ich hab keine Performance-Probleme auf Garmin bemerkt. Die Probleme liegen evtl. an Medien-Dateien oder der Anzeige - ich hab dort keine Medien verwendet...
 

docfred

Geocacher
Ich glaube das bei Garmin die WIG-Performance auch von Faktoren außerhalb des WIG-Players beeiflusst werden. Ich vermute, dass im Hintergrund Abstände zu gespeicherten Waypoints berechnet werden. Ich habe den Eindruck das ein WIG sauberer läuft, wenn das Garmin keine Wegpunkte und keine Caches geladen hat.
docfred
 

kansu_makugen

Geocacher
bodenseepingu schrieb:
...Die Probleme liegen evtl. an Medien-Dateien oder der Anzeige - ich hab dort keine Medien verwendet...

Die Sache mit Medien - v. A. Bilder in Messageboxen/Dialogen - kann ich quasi bestätigen. Ich teste grad das aktuelle Update meiner Cartridge, u. a. auch auf meinem alten Nokia 5800. Da dauert es deutlich länger, einen Dialog mit Bildern anzuzeigen, als einen ohne Bilder. Man merkt aber auch, wenn zwischen zwei Meldungen viel im Hintergrund passiert.
 

bodenseepingu

Geomaster
Also Performance-Probleme bei Item:MoveTo kann ich nicht bestätigen. ich hab wie gesagt das Koffer-Beispiel vom Wherigo-Handbuch noch mit Bildern erweitert. Ich kann ohne Probleme auf dem Garmin die Items verpacken wie ich möchte. Weiterhin habe ich 13 Items auf einmal aus dem Koffer ausgepackt und ins Inventory verschoben - absolut keine Performance-Probleme - keine Denkpause auf dem Garmin Oregon 450 - nicht mal eine Sekunde.
 
OP
J

jonny65

Geomaster
Nicht mal 1 Sekunde ? Dann hast du ein Oregon Quadcore :D
Ich hab mal 10 Items probiert, die ich mit 1 Klick unsichtbar mach, das verglichen mit dem moven von 10 Items, alle ohne beschreibung oder Bild. Am Ende ein Show Screen Main Screen, damit ich abschätzen kann wie langs gedauert hat..beides war in etwa gleich schnell/langsam, schätze so 2 Sekunden, auf keinen Fall kam der Mainscreen sofort nach Klick. Sagt mir daß es wurscht ist, ob move to none oder invisible.

Ich hab noch was festgestellt, was eigentlich aber logisch ist. In einem Message onclick stehen paar Sets und dann ein save game und show screen main screen.
Nach dem Klick vergehen etwa 4 Sekunden bis der Main Screen kommt, was eigentlich nur das speichern ausmachen kann. Und dies dauert wohl umso länger je umfagreicher die Cartridge ist.

Das mit vielen Waypoints oder Caches oder vielleicht auch Tracks auf dem Gerät als Ursache würde Sinn machen. Wenn im Hintergrund ständig aktualisiert wird, ist das so wie mehrere Tasks, die sich die Rechenzeit teilen. Also ins GC Listing in Zukunft schreiben : Löscht bitte alles vom Gerät und spielt dann die Cartridge drauf :/
 

bodenseepingu

Geomaster
Also 1500 wegpunkte habe ich drauf - allerdings - getestet ohne GPS Empfang - das könnte es erklären

Save braucht lange - das ist klar
 
Oben