AR—如何在Unity中使用UserDefineTarget

这篇博客介绍了如何在Unity中使用UserDefineTarget,让用户能够通过点击按键将拍摄的图片转化为ImageTarget。步骤包括创建新项目,导入Vuforia包,删除MainCamera,拖拽ARCamera、UserDefinedTargetBuilder和ImageTarget预制体。设置ImageTarget类型为User Defined,并编写C#脚本来处理用户自定义目标的创建。运行时,用户需允许使用摄像头,当识别质量足够时,点击按钮会在ImageTarget上显示模型。
摘要由CSDN通过智能技术生成

所谓的UDT在Untiy中的意思就是User Defined Targets 也就是用户自定义Target,接下来要实现的内容是,如何在Untiy中实现当用户点击按键的时候创建一个简单的ImageTarget来实现将用户拍摄的图片变成一个ImageTarget,这样不仅给用户带来更大的自由度,也解决了固定ImageTarget带来的麻烦。好了,下面就来说说相应的解决步骤:

第一步,创建一个新的Unity项目;
第二步,导入Vuforia Unity Extension package(vuforia-unity-android-ios-X-Y-Z.unitypackage);
第三步,将Unity中的MainCamera从场景中删掉;
第四步,然后在Project视图中打开Assets/Vuforia/Prefabs 文件夹;
第五步,拖拽ARCamera, UserDefinedTargetBuilder和ImageTarget这三个预制体到你的场景当中;这几步完成之后界面应该是这样的;(这个步骤使用过的应该很好理解,但是为了大部分人就配上图吧)
这里写图片描述
在这里需要注意一个地方就是ARCarmera中需要AppLicenseKey,这个可以在Vuforia官网进行注册就可以下载,然后粘贴到这里就可以了,具体的帖子有很多,这里就不再赘述;
这里写图片描述

全部拖拽完成了之后,就来进行相应的属性设置
ImageTarget属性设置:
1, Type类型更改为:User Defined;(也就是用户可以自定义ImageTarget)
2, 然后你可以在场景中随便创建一个对象(cube),然后将其设为Imagetarget的子级(在这里你可以自己定义好cube的位置和大小等属性和非用户自定义的步骤是一样的)
3, 如果你的场景中没有Directional Light 就再添加一个上去;
4, 选中一件添加上去的UserDefinedBuilder然后会看到有几个需要勾选的地方,将第一个勾选上也就是Start Scanning Automatically这个选项,这个选项的意思就是在开始的时候可以自动的进行摄像头的扫描;
这里写图片描述
下面咱们就开始写代码吧:
1, 创建一个C#脚本名字叫SimpleUDTHandler.cs并且将这个脚本挂到创景中的UserDefinedTargetBuilder上,下面就开始实现这个脚本,并且讲述这个脚本的具体内容。
SimpleUDTHandler.cs~~:
//在这里我们为SimpleUDTHandler引用IUserDefinedTargetEventHandler接口;下面我们就实现接口中的方法,注意:要全部都实现哦;

using System.Collections;
using UnityEngine;
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值