Version: Unity 6.0 (6000.0)
언어 : 한국어
게임 컨트롤러 지원
게임 컨트롤러 입력 처리

게임 컨트롤러 감지

Unity는 프로젝트의 스크립트가 Input.GetJoystickNames를 참조하는 경우에만 프로젝트에 게임 컨트롤러 프레임워크를 포함합니다. 사용 가능한 경우 Unity iOS 런타임이 프레임워크를 동적으로 로드합니다.

사용 가능한 모든 컨트롤러 목록을 가져오려면 Input.GetJoystickNames를 호출하십시오. 언제든지 이 목록을 다시 확인하여 컨트롤러가 연결되었는지 분리되었는지 감지할 수 있습니다.

이 API를 호출하여 연결된 컨트롤러 유형을 감지할 수 있습니다. 이름은 [$profile_type,$connection_type] joystick $number by $model 패턴을 따릅니다. $profile_typebasic 또는 extended이며 $connection_typewired 또는 wireless입니다. Unity가 하나 이상의 컨트롤러를 감지하면 온스크린 터치 컨트롤을 비활성화하거나 수정하여 컨트롤러 입력을 보완할 수 있습니다.

예: 연결된 게임 컨트롤러 감지

다음 코드 샘플은 기기에 컨트롤러가 연결되어 있는지 확인합니다.

using System.Collections;
using UnityEngine;

public class GameControllers : MonoBehaviour
{
    private bool connected = false;

    IEnumerator CheckForControllers() {
        while (true) {
            var controllers = Input.GetJoystickNames();

            if (!connected && controllers.Length > 0) {
                connected = true;
                Debug.Log("Connected");
            
            } else if (connected && controllers.Length == 0) {         
                connected = false;
                Debug.Log("Disconnected");
            }

            yield return new WaitForSeconds(1f);
        }
    }

    void Awake() {
        StartCoroutine(CheckForControllers());
    }
}

추가 리소스:

게임 컨트롤러 지원
게임 컨트롤러 입력 처리