Плохо работает сглаживание вращения акселерометром.

Программирование для iPhone & Android

Плохо работает сглаживание вращения акселерометром.

Сообщение display 18 авг 2017, 17:48

Делаю игру для андроид смартфонов. В игре необходимо наклонять карту(у меня для теста это просто растянутый, сплющенный сверху куб) акселерометром смартфона. Наклонять карту нужно вперед/назад и влево/вправо соответственно наклону телефона. Наклон карты акселерометром сделал, но карта наклоняется прерывисто(что ожидаемо при использовании акселерометра). Попытался сгладить наклон(код ниже) - наклон акселерометром стал плавным, но при этом куб часто стал сходить с ума и резко наклоняться/вращаться с сумасшедшей скоростью под какими-то дикими углами. Может кто подскажет, что я делаю не так?

void Start () {
}

void Update () {
float x = Input.acceleration.normalized.x;
float y = Input.acceleration.normalized.y;
float rotateX;
float rotateZ;
float rotationDamp = 5.0f;
float currentRotationX = transform.eulerAngles.x;
float currentRotationZ = transform.eulerAngles.z;
float wantedRotationX = x * 500.0f; //Максимальный наклон телефона = 0.2 и -0.2(значения акселерометра) и 100 градусов. 0.2 * 500 = 100 градусов
float wantedRotationZ = y * 500.0f; //

rotateX = Mathf.LerpAngle (currentRotationX, wantedRotationX, rotationDamp * Time.deltaTime);
rotateZ = Mathf.LerpAngle (currentRotationZ, wantedRotationZ, rotationDamp * Time.deltaTime);

rotateX = Mathf.Clamp (rotateX, -100, 100); //максимальные углы наклона = 100 градусов
rotateZ = Mathf.Clamp (rotateZ, -100, 100); //

transform.rotation = Quaternion.Euler(rotateX, 0, rotateZ);
}
display
UNец
 
Сообщения: 1
Зарегистрирован: 18 авг 2017, 02:46

Re: Плохо работает сглаживание вращения акселерометром.

Сообщение [bm] 21 авг 2017, 12:36

А зачем акселерометром а не гироскопом? Для акселероментра попробуйте скрипт (фильтр) из этой темы https://forum.unity3d.com/threads/iphon ... ion.39142/
Mafia Rush: universal iOS game _https://goo.gl/CKq4D Android _https://goo.gl/slFLXx
Shooter Ball: Android _https://goo.gl/21QyPw
skype: bmindfield
Аватара пользователя
[bm]
UNIверсал
 
Сообщения: 426
Зарегистрирован: 11 май 2010, 22:33
Откуда: Россия, Ижевск


Вернуться в iPhone & Android

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2