Aufgetretene Probleme

Sebastian Stock, Peer Wagner

Das Zusammenspiel der einzelnen für die Augmented Reality benötigten Views und der Wechsel zwischen verschiedenen Activites hat einige Schwierigkeiten und Schwächen bei deren Programmierung zum Vorschein gebracht. Das Kamerabild und die beiden Views zur Darstellung der OpenGL-Objekte und der Geschenk-Animation müssen in einem FrameLayout vereinigt und übereinander gelegt werden, um alle gleichzeitig anzeigen zu können. Erst so wird eine Augmented Reality erzeugt. Dafür müssen die Views in einer bestimmten Reihenfolge in das FrameLayout eingefügt werden, da das Kamerabild nicht die anderen beiden Views überdecken darf.

Aber selbst mit der scheinbar richtigen Reihenfolge traten Probleme auf. So wurde beim ersten Wechsel in die Augmented Reality zunächst alles richtig angezeigt. Nach einem Wechsel in eine andere Activity, wie beispielsweise das Inventar, war nur noch das Kamerabild sichtbar. Wie sich später herausstellte, ist dies verschuldet durch eine falsche Implementation der Klasse, von der alle Views abstammen. Es hat also nicht gereicht auf verschiedene Views auszuweichen und auch ein zweifaches Initialisieren der Oberflächen brachte keine Besserung. Das Problem ist nämlich, dass die Reihenfolge und damit die Tiefeninformationen beim Erstellen der Augmented Reality von großer Bedeutung sind. Die Tiefeninformation wird jedoch beim initialen Aufbau der Views anders herum getätigt als es bei einem erneuten Aufbau der Oberflächen der Fall ist. Seltsam ist dabei jedoch nicht, dass es diesen Fehler gibt, sondern dass er bereits seit der ersten Android-Version existiert und auch seitdem bekannt ist und trotzdem noch nicht behoben wurde. Hier stellt man sich natürlich die Frage ob ein solches System dann überhaupt für einen stabilen Betrieb verschiedener Applikationen geeignet ist.

Die Soundausgabe ist, wie im vorigen Kapitel beschrieben, ebenfalls nicht zu benutzen gewesen. Der Fehler der hierbei auftrat war, dass der Sound in manchen Fällen gar nicht und in manchen verzerrt wiedergegeben wurde. Dies ist natürlich nicht zumutbar wenn man ein soches Spiel vertreiben möchte. Es mag allerdings auch an der Anforderung liegen, den Sound in Echtzeit zu wechseln oder auch zu wiederholen, denn es sind dabei immer noch die beschriebenen Grenzen einzuhalten und nur eine Instanz des MediaPlayer vorzuhalten.


Page last modified on March 21, 2011, at 06:27 PM