사용 가능한 모든 컨트롤러의 리스트를 가져오려면 Input.GetJoystickNames를 호출합니다.언제든지 이 리스트를 다시 확인하여 컨트롤러가 부착 또는 분리되었는지 확인할 수 있습니다.
이 API를 호출하여 연결된 컨트롤러의 유형을 감지할 수 있습니다.이름은 다음 패턴을 따릅니다.[$profile_type,$connection_type] joystick $number by $model.$profile_type은(는) basic 또는 extended, 그리고 $connection_type은(는) wired 또는 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());
    }
}