Unity 5 + oculus dk2 + leap motion 开发环境搭建以及一些坑

1.环境搭建

    自从14年底搞了一个unity 4 + oculus dk2+kinect的“严肃”游戏后,一直没有再做过这一类的项目了。到了最近重新着手的时候,发现3种工具都有了大更新。一是unity 4升级为unity 5.4以后,许多功能甚至脚本库都发生了大改动,而且自动集成了oculus开发环境,不用像之前需要导入oculus资源包;二是kinect因为其精确性已经基本被淘汰了,改用新的手势识别设备leap motion,下面记录一下步骤。

    unity 5.4.0安装不说了,oculus sdk使用最新的1.9.0,与以前使用的0.4大为不同的是,安装后没有运行的oculus图标,不能进行设置,只能运行支持oculus的程序。leap motion也使用最新版orion beta。3个环境都安装完成以后,就能直接进行开发了。。。。。

    在unity中新建一个项目xxx,导入leap motion核心资源包LeapMotion_CoreAsset_Orion_4.1.1.unitypackage,在leap motion官网中下载。里面有一些简单的场景实例,可以直接运行,看看效果。

    然后再场景中拖入LMHeadMountedRig的prefab

给下面的leapHandControllrt添加4个prefab:

pepperBaseFullLeftHand和pepperBaseFullRightHand为自带的手的模型之一,勉强算精致

rigidRoundHand_L和rigidRoundHand_R应该为骨头架子模型,控制手势

设置leapHandController下Hand Pool脚本的model pool 的size变量为2,如图绑定prefab

之后便能实现leap motion手势控制了。

而对于oculus,unity 5提供了默认支持,只需要在普通游戏完成以后,在菜单 file-》building-》player setting下,在弹出的面板下勾上virtual reality support,然后增加oculus sdks就行:

如此导出游戏之后,便能在安装有oculus运行环境的电脑上运行游戏了。

 

2.坑

    导出的exe文件不能放在中文路径下,否则不能在头盔里运行,只能在桌面或英文文件夹下运行;

 

    LMHeadMountedRig下的CenterEyeAnchor自带了一个camera组件,正常运行游戏需要取消这个camera组件。

 

    c#脚本中,现在获取当前物体的组件不能直接使用this.AudioSource之类的方法或属性了,需要使用this.GetComponent<AudioSource>();这样的模板方法。不知道是不是升级unity 5以上的原因。

 

    在增加碰撞体的时候,不规则碰撞体只能使用 mesh collider,但是需要其生效需要勾选convex属性,即物体的所有顶点构成一个最小凸多面体,但是这样是影响凹多面体的碰撞效果。

 

    模型问题:unity对fbx支持应该最好,其次是obj,对大部分3dmax制作的max文件来说,通过3dmax转化成fbx都丢失了部分材质贴图,少量没有丢失,可能是3dmax打开现成模型时候缺少必要支持的插件造成的,所以最好模型直接导出为fbx,obj格式需要手动贴图。

 

    另外,模型选择需要仔细,模型划分越细越好,这次游戏我们选择了一个人物模型,整个身体是一个大的mesh render,没有肢体的子模型,造成不能实现肢体动作,贴面的碰撞体,等等一系列问题。

 

    游戏面板问题:通过添加canvas组件绘制游戏面板,包括image,text等组件,这些组件在canvas组件下放置的顺序会影响其遮罩顺序,因此需要注意。

 

    主camera需要与地面平行!并且保持适当高度,否则游戏过程中会产生超强的眩晕感(戴上头盔3秒晕吐),因此camera最好在align with view后调整rotation。

转载于:https://my.oschina.net/u/2248183/blog/780036

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值