2012-07-27 6 views
10

Ich arbeite an einem Spiel und ich muss zwei Player-Objekt-Steuermechanismen synchronisieren: Einer ist ein Bildschirm Touch-Controller und zweitens ist der G-Sensor. Der Bildschirm-Controller muss mit einem Wert in Sekunden initialisiert werden, also muss ich wissen, wie viel Sekunden SENSOR_DELAY_GAME bedeuten. Danke im Voraus.SENSOR_DELAY_GAME: Wie viel kostet das?

+0

Meinst du den konstanten Wert oder wie lange zwischen den einzelnen Abstimmungen, wenn SENSOR_DELAY_GAME gesetzt ist? –

+0

@Dazzy_G, Ja, genau. – Egor

Antwort

3

Ich glaube nicht, dass es eine definitive Antwort auf Ihre Frage gibt, in der Bedeutung, dass dies Gerät abhängig ist. Beachten Sie jedoch, dass selbst wenn Sie eine bestimmte Verzögerung für Ihren Sensor definieren, der Sensor Manager Ergebnisse schneller oder langsamer zurückgibt als Sie angegeben haben. In Ihrem Fall denke ich, dass der beste Ansatz darin besteht, die durchschnittliche Zeit (in Sekunden) zwischen zwei aufeinanderfolgenden Abstimmungen nach einer gewissen Zeit zu nehmen, die Ihr Sensor ausführt, initialisiert mit dem Flag SENSOR_DELAY_GAME und diese Zeit an Ihren Bildschirm weiterzuleiten Controller-Initialisierung.

0

Sieht so aus, als wäre diese Konstante definiert als 37-39 ms.

http://webraidmobile.wordpress.com/2010/10/21/how-long-is-sensor_delay_game/

Wie auch immer, wenn Sie ein Spiel entwickeln, das ist wahrscheinlich die Konstante, die Sie verwenden sollten.

+2

irreführend; Dies ist nicht etwas, das _defined_, sondern abhängig von Gerät ist. Auch wenn man sich auf eine Quelle bezieht, in der _ein_ Gerät geprüft/getestet wurde, ist eine solche Schlussfolgerung nicht gerechtfertigt – Makibo

25

Entnommen http://developer.android.com/guide/topics/sensors/sensors_overview.html

Standarddatenverzögerung ist für typische Bildschirm Änderungen Orientierung Überwachung und eine Verzögerung von 200.000 Mikrosekunden verwendet. Sie können andere Datenverzögerungen angeben, wie SENSOR_DELAY_GAME (20.000 Mikrosekunde Verzögerung), SENSOR_DELAY_UI (60.000 Mikrosekunden Verzögerung) oder SENSOR_DELAY_FASTEST (0 Mikrosekunde Verzögerung). Ab Android 3.0 (API Level 11) können Sie die Verzögerung auch als absoluten Wert angeben (in Mikrosekunden).

Die von Ihnen angegebene Verzögerung ist nur eine vorgeschlagene Verzögerung. Das Android System und andere Anwendungen können diese Verzögerung ändern. Als beste Praxis, sollten Sie die größte Verzögerung angeben, die Sie können, weil das System in der Regel eine kleinere Verzögerung als die Sie (dh ) verwenden, sollten Sie die langsamste Abtastrate wählen, die immer noch erfüllt die Anforderungen Ihrer Anwendung). Die Verwendung einer größeren Verzögerung belastet den Prozessor mit einer niedrigeren und verbraucht daher weniger Strom.

Verwandte Themen