标签: 重要组件 SteamVR_CameraVR摄像机,主要功能是将Unity摄像机的画面进行变化,形成Vive中的成像画面 使用方法: l 在任一个摄像机上增加脚本 l 点击Expand按钮 完成以上操作后,原本的摄像机会变成如下结构 l Origin:位置 l Head:头部 l Eye:眼睛 l Ears:耳朵 至此,游戏中Vive中可以看到游戏画面,360度旋转查看游戏世界,在游戏世界中移动等 SteamVR_ControllerManager和SteamVR_TrackedObject控制器,主要用于设置和检测Vive控制器。 Vive控制器由菜单键(ApplicationMenu),触摸板(Touchpad),系统键/电源键(System),扳机键(Trigger),侧柄键(Grip),组成 1 Menu button(菜单键) 2 Trackpad(触摸板) 3 System button(系统键/电源键) 4 Status light 5 Micro-USB port 6 Tracking sensor 7 Trigger(扳机键) 8 Grip button(侧柄键) 使用方法 在Origin物体上添加2个子物体代表Vive的2个手柄,增加SteamVR_TrackedObject,Index设置为None 在Origin物体上添加SteamVR_ControllerManager,设置左右手柄 至此就完成了手柄的集成。 获取手柄状态通过代码 var device = SteamVR_Controller.Input(uint); device.GetTouchDown(SteamVR_Controller.ButtonMask) 就可以获取到某个按键的状态 或者使用 var system = OpenVR.System; system.GetControllerState(uint, ref VRControllerState_t)) 获取当前所有的按键状态 手柄震动public void TriggerHapticPulse(ushort durationMicroSec = 500, EVRButtonId buttonId = EVRButtonId.k_EButton_SteamVR_Touchpad) { var system = OpenVR.System; if (system != null) { var axisId = (uint)buttonId - (uint)EVRButtonId.k_EButton_Axis0; system.TriggerHapticPulse(ControllerIndex, axisId, (char)durationMicroSec); } } 或者 var device = SteamVR_Controller.Input(uint); device. TriggerHapticPulse(); SteamVR_RenderModel该组件用于渲染手柄的模型,并且跟踪手柄的位置 使用方法 在左右手柄的物体下创建一个子物体,子物体上添加SteamVR_RenderModel脚本,Shader可以根据需求设置,比如设置为Standard 至此,游戏中可以看到手柄模型和手柄位置同步 SteamVR_PlayArea用于显示游玩区域。 使用方法,在Origin物体上添加该脚本即可 可以看到游戏场景中多了一个显示区域 注意事项制作UI的时候需要使用世界坐标,通过不同相机的Depth复合,目前还不支持(2016/5/23) 注意ControlIndex的值,默认情况下都会自动设置,如果手动设置错误将导致错误的表现 标签: |
|
来自: 雪柳花明 > 《HTC VIVE》