Unity 开发 VoxelStation VR一体机

注意:这个插件只能用于Unity 2019及以下,因为Unity在2020版本已经抛弃了这种VR一体机,

插件地址
下载后需要安装,

在这里插入图片描述
安装需要的版本,PDF是文档,

安装位置会有一个Unity 的包,然后把它拖入到工程中即可
在这里插入图片描述

拖入到工程后需要设置XR,Unity2020抛弃了SteroDisplay,,所以这个插件只能用于2019及以下

在这里插入图片描述

这个是需要用的VR预设体
在这里插入图片描述
所有的UI以及需要被点击的物体 必须在绿色框内 所有需要点击的物体都必须加上Grab标签,以及BoxCollider
在这里插入图片描述

预设体结构讲解,
在这里插入图片描述
交互笔的脚本。里面有所有的事件,比如点击物体 UI,拖拽等
在这里插入图片描述
鼠标的交互脚本,和交互笔的一样
在这里插入图片描述

代码动态修改绿色框,以及ViewSize、射线的粗细

                voxelStation.sceneCamera.localPosition *= viewSize;//动态设置viewSize,sceneCamera也必须要要重新设置
                //设置VR视角的viewSize
                voxelStation.viewSize = viewSize;

                Mouse mouse = voxelStation.GetComponentInChildren<Mouse>();//鼠标
                StylusOne stylus = voxelStation.GetComponentInChildren<StylusOne>();//交互笔



                Transform uiCanvas = voxelStation.transform.Find("CenterObject/UICanvas");
                uiCanvas.localScale *= viewSize;//设置UI画布
                voxelStation.stylusLengthDefault = viewSize;//设置交互笔射线长度
                mouse.DefaultHitDistance = MonoInstance<VoxelCore>.Instance.stylusLengthDefault * 1.5f;//设置使用鼠标时的射线长度
                stylus.DefaultHitDistance =  MonoInstance<VoxelCore>.Instance.stylusLengthDefault;//设置使用交互笔时射线的长度
                MonoInstance<VoxelCore>.Instance.STYLUS_BEAM_WIDTH = viewSize*0.001f;//设置射线的粗细程度

非常老的一种VR一体机设备,体验感差太多了

猜你喜欢

转载自blog.csdn.net/o_ojjj/article/details/129837396