• Unity zSpace开发记录


    zSpace基础及配置篇看这里https://blog.csdn.net/qq_42047805/article/details/124340512?spm=1001.2014.3001.5502

    一、zSpace组件

          没有官方解释,这里仅介绍对zSpace较常用组件的个人认知,有错误欢迎指正~

     1.ZFrame:框架

        Viewer Scale:修改该ZSpace所有组件的缩放

        PS:建议不要轻易改变缩放值

     2.ZCameraRig:相机框架,通过这个让相机与本身框架进行绑定

       Frame:相机框架,默认绑定ZFrame即可

       ViewerScale:如果绑定了ZFrame的话会跟随ZFrame的ViewerScale变化,不能在这里进行修改

       PS:默认绑定即可,修改缩放的话在ZFrame中进行修改

     3.ZCamera:相机管理器,通过这个组件对眼镜产生3D效果

       Enable Stereo:

       Stereo To Mono Delay:

       。。。

       PS:这块不太懂,待补充

     4.ZCanvas:基于UGUI重写的UI框架

       PS:基本把Canvas所用到的组件都重写了,这里Canvas的Render Mode要用World Space

     5.ZMouse:模拟鼠标

       Max Hit Distance:鼠标最大可交互距离,这个距离在Unity中测试通过的话就可以

       Max Hit Radius:最大可交互区域

       Ignore Mask、Priority Mask:鼠标交互遮罩,暂时还没有用到,根据需求进行层级设置即可

       PS:这里着重说一下Sprite,如果想实现鼠标持续在屏幕最前方,需要把这个Sprite的Z轴改为-0.01f,具体值或者正负根据项目而定

      6.ZStylus:模拟触控笔

       Max Hit Radius:这个与ZMouse中的一样,但在ZStylus子物体Beam组件ZStylus Beam上的Curve Start Pivot参数中有相似之处,都是可以决定射线终点的曲率,曲率过大或过小会都会影响体验效果,根据ZStylus中的Max Hit Radius和Beam中的Curve Start Pivot来调整适合的效果,下面附一张官方截图

    二、zSpace已遇到并解决的问题记录

       1.交互区域过大,触控笔发出的射线线段经常会误接触到交互的物体

         解决方案:降低ZStylus中的Max Hit Radius值

       2.带有碰撞器的物体都会被射线吸附

        解决方案:在ZStylus中Ignore Mask、Priority Mask过滤掉不需要交互的物体,或者删除不需要交互物体的碰撞器

       3.有时候鼠标会被UI遮挡住,但可以交互

        解决方案:修改ZMouse子物体Sprite的Z轴,修改一点值即可,修改值过大可能会导致不触发

       4.在zSpace 的开发中使用其他渲染管线

        解决方案:在对zSpace 的工程升级HDRP时会直接导致整个Scene场景变黑,原因是HDRP目前仅支持DX渲染的工程,而zSpace是基于OpenGL渲染,而URP在zSpace是可用的。(但据说现在zSpace也支持HDRP了,笔者还未测试过,感兴趣的小伙伴可以尝试一下)

       5.工程发布后在zSpace设备测试,在屏幕中心有Unity的小图标闪烁

        解决方案1:在启动时按住键盘左Shift,将图形质量在当前质量上改低,逐个测试,通过即可

        

        解决方案2:在zSpace的工程中Project Settings—Quality中去除所有抗锯齿。

  • 相关阅读:
    【Redis】从计算机组成原理开始讲解为什么会出现Redis
    安全防御,防火墙配置NAT转换智能选举综合实验
    3.0 Python 数字类型常用操作
    Docker方式创建MySQL8的MGR集群
    使用SecScanC2构建P2P去中心化网络实现反溯源
    学会preload和prefetch
    《自然语言处理实战:利用Python理解、分析和生成文本》读书笔记:第3章 词中的数学
    Qt5.9.1-下载安装环境搭建——HelloWorld
    【毕业设计】基于单片机的智能鱼缸系统设计与实现 - 嵌入式 物联网 stm32 c51
    RuntimeError: DataLoader worker (pid(s) 46220) exited unexpectedly
  • 原文地址:https://blog.csdn.net/qq_42047805/article/details/127688844