Game Programming/Game Engine

Unity3D :: 안드로이드 소프트키 안보이게 하기

VallistA2015. 7. 3. 13:35

갤럭시 시리즈의 경우 안드로이드 패널 자체에 백, 홀드, 옵션키가 나와있기 때문에 해상도 걱정을 안해도 되지만,

옵티머스 시리즈, 베가시리즈등 여러가지 안드로이드폰이 존재함에 따라 화면에 키를 배치하는 소프트키 시스템을 구축해놓은 폰도 만만치 않게 많다.

 

그럼에 따라서 개발자인 우리는 16:9 폰들 기준으로 코딩을 해놓으면, 이러한 폰들에 올라갈시 소프트키까지 화면의 크기로 인식이 되어 16:10이 되는 안좋은 제약조건이 발생해서 좌우가 짤리게 된다.

 

그것에 대한 코딩을 해놓으면 위나 아래에서 스크롤해서 내리면 소프트키가 올라오게 설정을 할 수 있는데 그 설정을 하는 소스를 보도록 하자.

 

소스코드 :

 

 

 

물론 필자도 이 소스를 인터넷에서 보았지만, 제대로 구동이 안되어 내부적으로 필자가 뜯어고친것들이 있으며,

원래의 소스코드는 안드로이드 runOnUiThread로 백그라운드 구동을 시켰지만 필자의 경우 유니티에서  Coroutine으로 돌리게끔 설정을 했다.

 

사용방법 : (맨 처음 로드해주는 곳에)

 

 

위의 소스에서는 홈키를 눌러서 화면에 나갔다오면 그것에 대해 처리를 하는 소스도 포함되어 있다.

기존의 소스의 경우 다시 게임에 들어오면 스마트키가 안들어가는 경우가 있는데 그 경우를 막는다.

 

코루틴에 딜레이 1초를 넣어놓았는데, 이게 계속 실행이 될 경우 부하가 걸릴 가능성이 높아서 막아 놓았다.

댓글

댓글쓰기 폼

VallistA

병특이 끝나서 게임에서 웹으로 스위칭한 프로그래머.
프로그래밍 정보등을 공유합니다.

자고 싶습니다. ㅠㅠ

페이스북    :: 링크
카카오톡    :: kingbye1
Github      :: 링크

궁금한점 문의 주시면 답변드리도록 하겠습니다

VISITED

Today : 21

Total : 411,846

SNS

  • 페이스북아이콘
  • 카카오톡아이콘
  • 트위터아이콘