Skip to main content
 首页 » 资源教程 » Vuforia教程

用 Vuforia 实现星球大战光剑效果

2017年05月15日 08:31:173140AR酱

  用 Vuforia 实现星球大战光剑效果 Vuforia教程 第1张

相信《星球大战》这一系列电影一定承载着许多人的回忆,在电影中,最引入注目的莫过于光剑了。

就连Facebook 的小扎也对它情有独钟,强势的给他的小女儿配了一波:

 用 Vuforia 实现星球大战光剑效果 Vuforia教程 第2张

lightsaber实在是酷,如果它与最近火热的AR技术“杂交”一下,会有什么奇妙的体验了?

预览

第一部分:开发环境

前期的开发准备与我们的那篇“如何实现 AR版 Tilt Brush”大同小异。

首先我们下载最新的Vuforia SDK,新建unity项目,并导入

然后,我们获取Licence Key

之后我们按步骤依次进行,最后copy license key,在unity中我们会用到

接下来,我们准备3D的识别模型,我们点击Target Manager,然后点击按钮Add Database

创建好后,我们点击进去,进行Add target

选择类型为Cuboid

然后,我们对它进行配置,点进去,分别上传你准备好的识别图:

然后,我们下载它的unity包

在案例中,可能还会用到一张识别图(实现 lightsaber 武器的“打斗”特效),我们选择Single Image: 

配置好之后,同样下载它的unity包。

第二部分:开发

进入unity中,我们首先已经把Vuforia SDK for unity 和两个识别图(一个2d的平面图,一个立方体的)的unity包一起导入unity中。我们删除原有的Main Camera,把 Vuforia 的camera 拖到面板中,并填好我们之前的license key

接着我们把 MultiTarget 拖到面板中

 用 Vuforia 实现星球大战光剑效果 Vuforia教程 第3张

接着选择识别图:

 用 Vuforia 实现星球大战光剑效果 Vuforia教程 第4张

然后拖入ImageTarget 到面板中,选好之前导入的识别图

 用 Vuforia 实现星球大战光剑效果 Vuforia教程 第5张

效果如图:

 用 Vuforia 实现星球大战光剑效果 Vuforia教程 第6张

然后我们在 Imagetarget 下面新建一个Plane,修改其size,这样容易实现光剑与其的一些交互

 用 Vuforia 实现星球大战光剑效果 Vuforia教程 第7张

然后分别添加Box Collider与Audio Source(音效资源后面会给出)

 用 Vuforia 实现星球大战光剑效果 Vuforia教程 第8张

我们还需要建立一个Material,命名为shadow,修改其模式为shader--DepthMask,挂在Plane上。

第四部分:光剑的准备

首先我们在MultiTarget下面创建一个Cylinder,命名为saber,修改它的一些参数:

然后我们为其添加如下组件:

我们还需创建一个Material,来改变光剑的颜色,模式选为unlit--color

 用 Vuforia 实现星球大战光剑效果 Vuforia教程 第9张

然后为了实现更炫的光剑,我们还需要一些粒子效果,我们在Asset Store 下载到我们的项目里(这个是免费的)

 用 Vuforia 实现星球大战光剑效果 Vuforia教程 第10张

我们选择一个效果拖到MultiTarget下面

 用 Vuforia 实现星球大战光剑效果 Vuforia教程 第11张

第五部分:交互

首先当我们的光剑触碰到识别图时,播放一段音效,在Imagetarget 下面的Plane里实现,新建脚本“start_cutting”

publicclassstart_cutting:MonoBehaviour

{

publicAudioSourcecut;

//Usethisforinitialization

//Updateiscalledonceperframe

voidOnTriggerEnter(Collidercollider)

{

if(collider.tag=="saber")

{

cut.Play();

}

}

voidOnTriggerExit(Collidercollider)

{

if(collider.tag=="saber")

{

cut.Stop();

}

}

}

 用 Vuforia 实现星球大战光剑效果 Vuforia教程 第12张

实现烧灼的黑色效果,实现思路类似与上篇的“如何实现 AR版 Tilt Brush”,首先我们新建个预制体,命名为mark

 用 Vuforia 实现星球大战光剑效果 Vuforia教程 第13张

然后新建个Material,模式为unlit--transparent,选择一张我们准备好的图片

同样的我们也可以在Plane 的脚本里实现,当检测到碰撞时,实例化 mark这一预制体。当然你也可以有更多脑洞,比如添加一些粒子特效等等,我在这里仅提供一些思路。

下载

资源链接

https://pan.baidu.com/s/1nvM9KGp 

密码: b1pc

AR酱原创

转自微信号AR酱(ARchan_TT)

并附上原文链接

阅读推荐

酱视频 | Meta 要让我们都做Augmented Human?

酱发现 | 成为VR / AR In-Studio摄像机跟踪系统标准的StarTracter

酱发现 | 一听你的AR纹身,就知道你是个有故事的人

 用 Vuforia 实现星球大战光剑效果 Vuforia教程 第14张

“呐,做 AR VR,最重要的就是开心啦”

梦想重要,开心也重要

摘自:AR酱

评论列表暂无评论
发表评论