我在 Unity 中使用 Google Cardboard SDK 和 Easy Movie Texture 插件创建了一个 VR 播放器

I have Created a VR player using Google Cardboard SDK and Easy Movie Texture plugin in Unity

我在 Unity 中使用 Google Cardboard SDK 和 Easy Movie Texture 插件创建了一个 VR 视频播放器。 我想像普通视频播放器一样添加播放、暂停、流式传输等控制按钮。 有人知道如何实施吗?

Unity 新手。需要很大的帮助。提前致谢

我建议使用硬纸板一侧的磁性滑动触发器来允许用户切换菜单,并使用 phone 的陀螺仪或罗盘来跟踪用户旋转并允许用户select Play/Pause 等...点头,可被 phone 的加速度计检测到,将用于确认动作。

使用 Google Cardboard API 提供的 Cardboard.SDK.OnTrigger 事件来检测脚本中的磁性触发器拉动:

void OnEnable() {
    Cardboard.SDK.OnTrigger += triggerPulledEvent;
}

void triggerPulledEvent() {
    menuOpen = !menuOpen;//Toggle the menu
}

然后,轮询移动设备的传感器:

到select基于头部旋转的选项:

Input.compass.enabled = true;

int totalOptions = 3;//Play, pause, exit
int selectionNumber = Input.compass.magneticHeading / 360 * totalOptions;

enum Options {
    PLAY = 0, PAUSE = 1, EXIT = 2//Add more as needed
}

当然,您需要显示用户正在查看的当前选项,但我会留给您。

对于检测点头的加速度计,检查 Y 轴上的显着加速度值:

if(Math.Abs(Input.acceleration.y) > 13) {
    ConfirmOption();
}

void ConfirmOption() {
    //Code that plays, pauses, stops the video etc
}