프로그래밍/Unity

[Unity3d] 안드로이드 자이로센서 이용하기

RYMIN 2020. 5. 27. 14:21

unity에서 안드로이드 플랫폼을 선택할 시 player를 조종하는 wasd 나 화살표키를 사용할 수 없기때문에

 

조이스틱 패드나 자이로 센서를 이용한 제어를 이용하게 되는데요.

 

오늘은 자이로 센서를 이용한 제어를 해보겠습니다. 

 

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerController : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        Input.gyro.enabled = true;
    }

    // Update is called once per frame
    void Update()

    {
        transform.Rotate(Input.gyro.rotationRateUnbiased.x, Input.gyro.rotationRateUnbiased.y, Input.gyro.rotationRateUnbiased.z);
    }
}

안드로이드 플랫폼에서 빌드를 하면 해당 스크립트가 붙어있는 오브젝트가 스마트폰 센서에 맡게 빙글빙글 돌아가는걸 볼 수 있습니다.

 

그냥 raw데이터인 rotatinoRate를 사용할 수 도 있지만 bias를 제외한 값을 사용하는것이 좀더 정확한 값을 받게 됩니다. 

 

간단한 큐브를 하나 만들어 붙혀봅시다.

======================================

혹시 설명중에 틀린게 있다면 댓글에 남겨주세요~ 최대한 수정해서 올바른 글을 쓰도록 노력하겠습니다.

공감한번 꾹 눌러주세요~