我在 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
}
我在 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
}