轩辕kuku
论坛版主
论坛版主
  • UID14
  • 粉丝6
  • 关注1
  • 发帖数78
  • 社区居民
  • 原创写手
阅读:828回复:1

Unity3d获取电视遥控输入

楼主#
更多 发布于:2016-04-05 19:50
U3D项目接入电视TV端操作,TV的遥控器的输入方式和鼠标键盘有些区别。
1、首先通过一个测试脚本可以测试出遥控器输入对应的UnityInput:
if(Input.anyKeyDown) { 
 Event e = Event.current; 
 if(e!=null)
 debugText.text= e.ToString();

2、测试后边能够获取到7个按键的输入:
//确认按键
 if(Input.GetAxis ("Fire1") != 0) {
 debugInfo= "Fire1 is Downed";
 }
     
 //返回按键
 if(Input.GetKeyDown (KeyCode.Escape)) {
 debugInfo= "Escape is Downed"; 
 }
     
 //菜单按键
 if(Input.GetKeyDown (KeyCode.Menu)) {
 debugInfo= "Menu is Downed"; 
 }
     
 //右向按键
 if(Input.GetKeyDown(KeyCode.RightArrow)) {
 debugInfo= "Horizontal right is Downed";
 }
     
 //左向按键
 if(Input.GetKeyDown(KeyCode.LeftArrow)) {
 debugInfo= "Horizontal left is Downed"; 
 }
     
 //向上按键
 if(Input.GetKeyDown(KeyCode.UpArrow)) {
 debugInfo= "Vertical Up is Downed"; 
 }

3、案例测试
UGUI界面:

描述:UI界面

图片:1.png

UI界面


 
当不写入任何脚本,在PC端测试都是键盘上对应的按键都是可以通过的,UGUIbutton本身有Navigation的选项,但是发布为Andoird程序,在TV端测试没任何反应。后来在上面的按键事件中加入代码:

SelectHandle.SelectedGameObject.GetComponent<Button>().FindSelectableOnRight().Select();


红色部分根据需求替换UpLeftDown等。然后TV端跑即可。

最新喜欢:

归海一啸归海一啸

欢迎分享

Leo
Leo
侠客
侠客
  • UID8
  • 粉丝1
  • 关注2
  • 发帖数19
  • 社区居民
沙发#
发布于:2016-04-06 09:47
牛逼
游客

返回顶部