eephyne Posté(e) 22 novembre 2010 Share Posté(e) 22 novembre 2010 J'ai un petit souci avec les sensors en ce moment . Je teste des orientations de camera en utilisant les sensors de l'accéléromètre et géomagnétique . Et il s'avère que les deux retournent de temps en temps (très souvent) la même valeur (alors que ça ne devrait pas) j'ai déclaré à dans mon onSensorChanged() if (event.sensor.getType() == Sensor.TYPE_ACCELEROMETER) { gravity = event.values; } if (event.sensor.getType() == Sensor.TYPE_MAGNETIC_FIELD) { geomagnetic = event.values; } à aucun moment les deux float[] gravity et geomagnetic ne sont mélangés , il ne sont utilisé que pour SensorManager.getRotationMatrix(R,gravity,geomagnetic) Et encore plus bizarre , autant le problème est minime lorsque j'ai le téléphone branché sur usb au pc (et regardant le logcat) , si je débranche l'usb , ça devient impossible , j'ai peut-être une bonne valeur toutes les deux secondes. (donc ça résulte à un effet lag de mouvement de caméra alors que l'animation se déroule normalement). Est-ce que quelqu'un à déja eu le même souci ? j'ai esssayé de diminuer la fréquence de reception des valeurs (de GAME à UI) mais ça ne change rien . Lien vers le commentaire Partager sur d’autres sites More sharing options...
eephyne Posté(e) 22 novembre 2010 Auteur Share Posté(e) 22 novembre 2010 sigh , j'ai trouvé .... gravity = event.values; ne fait pas de copie de l'array , une simple loop for comme: for (int i=0 ; i<3 ; i++) { gravity[i] = event.values[i]; } et c'est parti (désolé pour le post , mais si ça peut servir à quelqu'un un jour tant mieux). Lien vers le commentaire Partager sur d’autres sites More sharing options...
Recommended Posts
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.