一、StreamVR问题:

1.运行项目时不显示手柄控制器:

出现这种情况一般会在头显中提示不能加载按键配置文件,出现这种提示时请直接打开steam(注意不是steamVR哈),按照我的了解应该是按键配置文件是存储在Steam上面的,不过项目发布以后就不会出现这种问题了。

2.按键动作检测出现重复问题:

出现这种问题应该是现在的插件本身的问题,比如检测按键抬起或者按键按下经常会出现触发两次的情况,目前的解决方案是设置一个Bool值,按下的时候设为true,抬起的时候设为false

        if (TrigerAction.GetStateDown(SteamVR_Input_Sources.RightHand)){if (!rightTriger){rightTriger = true;}}if (TrigerAction.GetStateUp(SteamVR_Input_Sources.RightHand)){if (rightTriger){rightTriger = false;}}

3.Error during OpenVR Init: Init_InterfaceNotFound:这个问题应该是SteamVR与OpenCV(1.0.0版)的兼容问题,直接通过Steam更新SteamVR(我这边是更新到1.15.19),之后就没有这个问题了~

4.[SteamVR] Interface Not Found (105):这个问题还是SteamVR版本的问题,最少SteamVR1.15.19是有此问题的,出现这个问题的时候手柄是显示不出来的,

http://steamcommunity.com/app/250820/discussions/0/133259227526422836/

可以更新到beta版解决此问题,更新方法如下,目前更新到1.16.4版就解决了这个问题:

5.更新SteamVR时如果之前不小心删除了SteamVR的本地文件,执行“运行”或“更新”时就会出现错误,这是可以通过下面的步骤重新安装SteamVR:

二、Unity问题:

1.检测射线是否在UI之上(用于避免模型与UI互相干扰),注意此方法用在FixedUpdate中比较靠谱,若在Update中检测在webgl平台时不能及时检测到:

void FixedUpdate()
{//射线处在UI之上
#if !(UNITY_EDITOR||UNITY_STANDALONE )if (Input.touchCount <= 0)return;
#endif
#if !(UNITY_EDITOR||UNITY_STANDALONE )if (EventSystem.current.IsPointerOverGameObject(Input.GetTouch(0).fingerId))
#elseif (EventSystem.current.IsPointerOverGameObject())
#endifreturn;//射线不处于UI上时触发下方功能···
}

2.VS2019调试unity项目:在顶部菜单栏中“调试”->“附加到Unity调试程序”

3.Unity 加载项目时出现“package manager error”:

①可以关闭防火墙(设置白名单是没用的)之后重启电脑便可解决,等打开unity项目后可以再打开防火墙。

②可以断开网络,重启电脑后在离线模式下打开unity,之后再连接网络。

4.灯光烘焙问题:

①Directional 直射光也是可以用于烘焙的,但是属于全局光,如果用于室内烘焙会被房间的墙壁遮挡,因此烘焙出来的室内虽然也会有一定的亮度,但是关闭实时光照后处于室内的可移动物品就全部变为黑色(无光状态)。

②室内尽量使用点光源(PointLight)或者聚光灯光源(SpotLight)来进行烘焙,可以烘焙的亮一些,然后通过调整贴图的亮度来控制光线的亮度。

6.物体旋转问题:

通过eulerAngles进行物体旋转的时候会出现万向锁的情况,但是直接用Quaternion计算坐标又很麻烦,可以通过Quaternion.Euler()方法将eulerAngles转换为Quaternion来解决此问题

Quaternion _angle = Quaternion.Euler(new Vector3(0,45,0));
transform.rotation = _angle;

7.UGUI中无法触发事件(比如Button的点击)问题:

注意一下此UI控件所在Canvas中的EventCamera是否为空,因为事件的触发是基于摄像机发出的射线,若不为空此Canvas下面的所有UI控件的事件触发都会基于此摄像机,将此值设为空后将会默认由主摄像机(MainCamera)触发事件。

8.材质丢失问题:

将用到的材质创建一个材质球放到Resources文件夹下,若丢失材质的模型打包到Assetbundle中那么这个材质球也一起打包到这个Assetbundle中(常见于替换材质的情况)。

Unity开发VR项目——问题集锦相关推荐

  1. Unity开发VR大场景优化

    在做Unity大场景VR项目开发时,发现在运行时帧率掉的很严重,而且在VR里体验也很难受,一般来讲,做游戏开发帧率控制在30 - 60fps,而VR则需要60 - 120fps,影响帧率的硬件参数主要 ...

  2. 于.net开发平台项目案例集锦

    订阅 | 上一篇 | 下一篇 五味笔记 于.net开发平台项目案例集锦  作者:henq 日期:2007-09-14 字体大小: 小 中 大 基于.net开发平台项目案例集锦 经过微软.net Fra ...

  3. Unity开发VR——结合VRTK(二)

    上一个章节的链接:Unity开发VR--结合VRTK(一) 这一章节,继续利用VRTK开发VR 该章节介绍了使用VRTK来开发基础的VR功能 手柄射线 瞬移 (一)瞬移的初步实现 (二)瞬移机制 (三 ...

  4. Unity开发VR——结合VRTK(一)

    前言 1.网上也有很多类似的开发教程视频,但是整理一份详细的文档很重要,可以方便自己阅读查漏补缺 2.不同的VRTK插件版本,会有一点不同,不过只要两个版本相差不远,依旧能看懂并容易上手 (一)开发前 ...

  5. 使用UE4开发VR项目_性能优化(一)_常用工具

    原作者:Mullin-ぼくリん <使用UE4开发VR项目-性能优化>系列文章将分成三篇分别介绍使用UE4开发VR项目的一些工具使用和VR优化思路.目的是总结UE4开发VR项目中常用的一些调 ...

  6. unity开发VR的项目01——环境配置(unity2020.3)

    使用unity创建一个steam VR项目,首先要进行环境的配置. 一.Steam VR插件导入 创建一个unity 3D项目,在unity 商店(window->asset store)中搜索 ...

  7. unity开发VR的项目02——初始项目的创建和运行(基于xr interaction toolkit和OpenXR)

    一.环境配置 1.Open XR Plugin插件导入 打开Window->Package manager,在unity Registry中找到插件OpenXR Plugin下载并导入. 找到项 ...

  8. 浅谈Unity与VR产业,用Unity开发VR应用

    VR(Virtual Reality的缩写,中文翻译-虚拟现实)概念早在80年代初就被提出来的,其具体是指借助计算机及最新传感器技术创造的一种崭新的人机交互手段. 中国VR产业仍在摸索阶段,亟缺复合型 ...

  9. 【VR开发】Unity开发VR时的基本设置

    [背景]Unity对VR的支持个人感觉要由于虚幻引擎,但尽管如此,设置上还是需要花一番功夫研究.好在Unity推出了统一平台的VR集成插件,通过包含该插件的设置,通过Unity开发的VR游戏可以同时支 ...

最新文章

  1. linux之find -regex 使用正则表达式
  2. Android API Level对应Android版本一览表
  3. python语言的数字类型_基本数据类型数字
  4. 第一次摸服务器遇到的问题总结
  5. background-size属性100% cover contain
  6. 【bzoj2330】 [SCOI2011]糖果
  7. 循环上传导致oom_java之OOM排查
  8. java selenium click_按钮单击selenium java
  9. RHEL 4 安装单实例oracle 10g
  10. 数组模拟乘法(大数乘法)
  11. hibernate文档
  12. 【渝粤教育】广东开放大学 外国文学专题 形成性考核 (55)
  13. Gravatar - globally recognized avatar
  14. 国内学术期刊名录·2012 年版
  15. python numpy安装步骤-NumPy基础与安装
  16. 短视频jiexi客户端源代码
  17. mysql_stmt_precheck_COM_STMT_PREPARE 1
  18. CSDN 博客更换皮肤
  19. 隐蔽的API:基于RevitNET操作Revit文档。
  20. windows10系统更新后,Windows.old 无法删除解决方法

热门文章

  1. 如何查看本机Mac地址
  2. 基于Proteus学习单片机系列(七)——实时时钟DS1302
  3. 使用ARouter进行Android模块化开发,详解系列文章
  4. Hibernate持久化对象生命周期之实战探索
  5. RN使用native-nivigation3.0.9后报错3: unexpected char: '\' @ line 3, column 133. s\react-native-gestu
  6. 计算菜价python
  7. opencv c++实现棋盘格标定
  8. @Resource和@Autowired的区别
  9. pandas中如何选取某几列_Pandas 2:如何在数据集中选取列
  10. 案例:爬取豆瓣电影Top250中的电影信息