본문 바로가기

유니티/VR

[ VR ] Quest2에서 가상 키보드 사용하기

[ 가상 키보드 ]

[ 키보드 ]

Quest는 블루투스 키보드 역시 지원하지만 몰입형 앱에서는 화면안에 오버레이되는 키보드가 필요하다 .

음성 받아쓰기 , 스마트폰 입력 및 다국어 지원과 같은 동일한 기능 세트를 지원한다 .

 

[ 조건 ]

Oculus Integration이 19.1 이상의 버전을 사용해야 한다 .

 

[ 시스템 키보드 활성화 ]

[ 키보드 ]

편집 가능한 UI 텍스트 요소 (Input Field와 같은)가 입력 포커스를 받을 때 자동으로 나타난다 .

앱이 키보드를 표시하면 입력포커스를 획득하여 OVRManager.InputFocusAcquired이벤트를 트리거 한다 .

앱이 키보드를 받으면 입력 포커스를 획득하여 OVRManager.InputFocusAcquired이벤트가 트리거된다 .

 

[ 키보드 활성화 방법 ]

OVRCameraRig의 붙어있는 OVRManager의 QuestFeatures에서 Requires System Keyboadr를 체크한다 .

다만 , 주의할점은 해당 키보드는 APK를 통해 Quest 내부에 넣어야만 보인다는 점이다 .

Quest Link를 통해 확인하면 나오지 않는다 . 

 

[ 키보드 활성화를 스크립트로 수행 ]

아래 참고 링크를 확인하자

 

[ 문제 확인 ]

[ 문제]

해당 키보드를 활용하여 Input Field에 입력을 시도할때 , 입력완료 버튼을 누르면 키보드가 재차 나오는 문젝가 생겼다 .

나와 같은 문제를 겪은 사람인거 같은데 안드로이드 키보드 시스템 자체에 대한 수정으로 해결한것같았다 .

다만 정확한 해결방법을 보여주는것은 아니라 해결방안이 되지는 못했다 .

Issues with the Keyboard overlay

 

해당 문제에 대한 해결방안을 여러개 보았지만 결국에는 자체적으로 키보드를 만들어 사용하는 방안으로 해결하였다 .

키보드는 한글 , 영어가 모두 지원하는 키보드가 필요했는데 한글은 조합에 대한 경우도 생각해야 했기에

다음 키보드를 사용하였다 . 코드노잉님에게 감사드립니다 ,,!

MormOnScreenKeyboard.unitypackage
0.06MB

유니티  소스 - 가상키보드

 

다만 , 해당 코드를 사용한다면 아래 Requires System Keyboard 를 해제해주자!

 

 

 

참고

Issues with the Keyboard overlay

유니티  소스 - 가상키보드

도큐먼트 : Enable Keyboard Overlay