使用蓝牙游戏控制器以统一vr播放/停止视频

时间:2018-02-22 09:39:48

标签: unity3d google-vr video-player

我使用google vr sdk创建了一个统一的vr应用程序。目前我可以点击屏幕来启动视频。当我使用vr耳机时,我需要使用蓝牙控制器来播放/停止视频。有人可以帮我这么做吗?

2 个答案:

答案 0 :(得分:0)

您需要确定统一映射控制器按钮的方式,一旦确定要按哪个按钮以及在输入管理器中如何统一映射(编辑 - >项目设置 - >输入),您只需要打电话给您来自Update的函数如下:

void Update()
{
    if(Input.GetButtonUp("Fire1"))
    {
        playVideoFuncion();
    }
}

playVideoFunction()是你自己的功能。 在这个例子中,我使用了" Fire1"但也许在你的情况下是不同的。

例如,对于Xbox控制器,您可以在Xbox 360 Controller Input on Unity

中解释此配置

如果您在控制器上找不到任何相关内容,可以执行以下操作:

void Update()
{
    if(Input.GetButtonUp("Fire1"))
    {
        Debug.Log("Fire 1 Pressed");
    }

    if(Input.GetButtonUp("Fire2"))
    {
        Debug.Log("Fire 1 Pressed");
    }

    if(Input.GetButtonUp("0"))
    {
        Debug.Log("Button 0 pressed");
    }
    // Add more buttons and logs
}

可能有其他方法来识别随机控制器的输入,但我不知道如何。我需要Xbox控制器的映射,该页面很有用。

答案 1 :(得分:0)

您可以创建一个脚本并附加到视频播放器,以便当用户点击播放器时运行命令。我假设您已经拥有Google VR(GVR)的统一软件包。添加以下示例脚本并进行修改以满足您的需要。

/*Chat box*/

#chatbox {
  background-position: 10px 10px;
  -webkit-transition: width 0.5s ease-in-out;
  background-repeat: no-repeat;
  background-color: white;
  box-sizing: border-box;
  font-size: 16px;
  display: table;
  padding: 10px 20px 12px 15px;
  border: 1px solid #cccccc;
  height: 40.8em;
  width: 52em;
}


/*Chatbox inside border*/

.chatboxborder {
  background-position: 10px 10px;
  -webkit-transition: width 0.5s ease-in-out;
  background-repeat: no-repeat;
  background-color: white;
  vertical-align: bottom;
  overflow-y: scroll;
  transition: width 0.5s ease-in-out;
  box-sizing: border-box;
  font-size: 16px;
  display: table-cell;
  padding: 10px 20px 12px 15px;
  height: 2.8em;
  border: 1px solid #cccccc;
  width: 20em;
}


/*Chat message*/

#chatspace {
  transition-duration: 5s;
  background-color: #ECECEC;
  position: fixed;
  z-index: 4;
  bottom: 0px;
  height: 20px;
  border: 1px solid #000;
  right: 240px;
  left: 20px;
}

#chatbox p {
  transition-duration: 5s;
  -moz-border-radius: 4px;
  background: #E6E6E6;
  padding: 1em;
  margin: auto;
  border: 1px solid #BDBDBD;
  width: auto;
}