게임 컨트롤러 감지
Learn how to detect controllers in your application.
읽는 시간 1분최근 업데이트: 한 달 전
Unity는 프로젝트의 스크립트가 를 참조하는 경우에만 프로젝트에 게임 컨트롤러 프레임워크를 포함합니다. 사용 가능한 경우 Unity iOS 런타임이 프레임워크를 동적으로 로드합니다.
Input.GetJoystickNames사용 가능한 모든 컨트롤러 목록을 가져오려면 를 호출하십시오. 언제든지 이 목록을 다시 확인하여 컨트롤러가 연결되었는지 분리되었는지 감지할 수 있습니다.
Input.GetJoystickNames이 API를 호출하여 연결된 컨트롤러 유형을 감지할 수 있습니다. 이름은 패턴을 따릅니다. 은 basic 또는 extended이며 은 wired 또는 wireless입니다. Unity가 하나 이상의 컨트롤러를 감지하면 온스크린 터치 컨트롤을 비활성화하거나 수정하여 컨트롤러 입력을 보완할 수 있습니다.
[$profile_type,$connection_type] joystick $number by $model$profile_type$connection_type예: 연결된 게임 컨트롤러 감지
다음 코드 샘플은 기기에 컨트롤러가 연결되어 있는지 확인합니다.
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()); }}