Unity3D之简单AR游戏

使用Unity开发AR游戏的基础配置与操作可以参考老师的博客,里面写的非常详细,很适合入门。
但是老师的博客里面介绍的是旧版本的unity配置,现在到官网下载安装 Vuforia 插件时步骤有些不同,所以在这里简单介绍新版本Unity(我的是Unity2.19.3.f1,按照官网介绍大于2017的版本应该都类似)下的配置过程。

新版本Unity安装Vuforia扩展包

打开你做AR的unity项目,点击页面左上角的file --> Build Settings
在这里插入图片描述

选择上图左下角的"Player Settings"。
此时这里的Vuforia Augmented Reality Supported应该没有被选上,将这一项打上勾(如下图),然后等待扩展包被引入。
在这里插入图片描述

现在在unity中使用create时,就出现了Vuforia的相关组件
在这里插入图片描述

可能遇到的问题

  • 新版本unity的Vuforia组件中没有虚拟按钮(virtual button)
    大多数网上的教程里都是prefabs里带有virtual button的预制体,但查看vuforia官网就可以发现,2017年起unity就已经集成了vuforia插件,而且virtualbutton的功能被集成进了ImageTarget的Inspector里
    在这里插入图片描述
  • AR 模型抖动问题
    模型的抖动和硬件的性能有关系,在不改变vuforia识别算法和追踪算法的前提下,我们能做就是优化自己的项目。
    • 让相机离模型远一些
      实际操作时可以发现相机镜头距离模型越近,模型就抖动的越厉害,这有可能是因为镜头对image target中识别点边少了导致的不稳定,所以在实操的时候可以使模型和target image离镜头稍远。

    • 优化美术,减少模型面数
      使用较简单的模型能够减小渲染的难度,会在一定程度上减轻抖动的发生。

    • 提高 image target 的星级,使用更容易识别的 image target

      在添加image target到数据库后网页上会显示该图片的星级,比如下面这张图就是4⭐。这里的⭐表示图片的识别度,理论上来说图片越复杂,那么他的识别度就越高。而识别度高的图片对于识别速度和防抖动都有很好的帮助。
      在这里插入图片描述


AR 游戏实现

在开始制作AR游戏时我本想做成交互性比较强的,并且还做成了一个设计为主角突破守卫取得宝箱的半成品AR游戏。但是很遗憾的是,有可能是我的电脑摄像头比较差,或者我摆放target image的动作不到位,我在图上设计的虚拟按钮很难使用,要点好几次才能点到那个按键,所以该方案不得不pass。
由于这个原因,接下来设计游戏时我主要选择观赏性较强的。在之前的作业中我们曾实现过一个只有太阳、地球、以及月亮的简单太阳系。我把之前的小练习扩展了一下,变成了整个太阳系(太阳系加上八大行星),每个星球都有自转以及公转。最终用AR实现后效果看起来还不错。
接下来以太阳系游戏为例简单介绍一下制作AR游戏时该如何编程。

  • 游戏对象创建
    要让太阳系出现AR的效果,那么游戏对象必须被创建在image target下。所以第一步是在image target下面依次创建太阳以及八大行星,并将位置、大小以及贴图调整好。
    在这里插入图片描述

  • 添加脚本
    星球有自转和公转的能力,所以对每个星球添加两个对应的脚本

using System.Collections;
using System.Collections
  • 4
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值