Điều khiển bằng cảm biến Gyro
C# Code
using UnityEngine;
public class MobileGyroController : MonoBehaviour
{
private bool gyroEnabled;
private Gyroscope gyro;
private GameObject cameraContainer;
private Quaternion rot;
void Start()
{
// Tạo một container để không ảnh hưởng trực tiếp đến camera chính
cameraContainer = new GameObject("Camera Container");
cameraContainer.transform.position = transform.position;
transform.SetParent(cameraContainer.transform);
gyroEnabled = SystemInfo.supportsGyroscope;
if (gyroEnabled)
{
gyro = Input.gyro;
gyro.enabled = true;
cameraContainer.transform.rotation = Quaternion.Euler(90f, 90f, 0f);
rot = new Quaternion(0, 0, 1, 0);
}
else
{
Debug.LogWarning("Thiết bị này không hỗ trợ Gyroscope.");
}
}
void Update()
{
if (gyroEnabled)
{
transform.localRotation = gyro.attitude * rot;
}
}
}Sử dụng cảm biến con quay hồi chuyển (gyroscope) của điện thoại để điều khiển sự xoay của một đối tượng. Hữu ích cho các game đua xe hoặc trải nghiệm VR/AR đơn giản.