首页 > 其他分享 >Unity和Easy AR制作一个AR的APP

Unity和Easy AR制作一个AR的APP

时间:2023-01-05 13:05:04浏览次数:57  
标签:zl 物体 扫描 Unity AR ImageTarget APP 图片


这个不是什么正规的项目。。。就是觉得AR好玩,研究了一下,很早之前就玩过了,现在再做的时候竟然忘记了。看来还是要记录一下的。。。

功能就是:用手机扫描一个图片,然后会出现一个AR物体,当然这物体是你自己设置的模型。

 

首先说如何制作一个AR的APP需要准备什么,easy ar这个插件,我用的版本是2.2.0的;unity我用的是unity2018.2.3的;

 

在做项目之前,要去easyar的官网注册一个账号,只后去开发中心,添加一个SDK的key,会自动获取到一个sdk的license key。这个很重要,之后会用到的。

Unity和Easy AR制作一个AR的APP_赋值

当然这个名字是有讲究的,和unity打包时候那里的公司名字一样,如上图中

Unity和Easy AR制作一个AR的APP_赋值_02

Unity和Easy AR制作一个AR的APP_赋值_03

 

然后就打开untiy导入easy ar的插件进去,从prefabs里找到EasyAR_Startup和ImageTarget两个物体然后拖进场景里。如图:

同时把你要扫描的图片放到一个名为:StreamingAssets的文件夹里,如果没有这个文件夹就新建一个。注意:文件夹名字必须是StreamingAssets

我在这里放了很多图片,本案例只用名为zl的图片做例子,如图:

Unity和Easy AR制作一个AR的APP_官网_04

在EasyAR_Startup的属性里把刚在官网里申请到的key复制过来,放到key的里面。如下图:

Unity和Easy AR制作一个AR的APP_官网_05

 

在ImageTarget的下面放一个物体(这个物体就是你扫描图片要显示的物体,作为ImageTarget的子物体),本案例里放了一个球体。

默认拖到场景里的ImageTarget在Scene里是看不到东西,我们可以给它加一个材质球,假如我这里新建的叫mat的材质球,材质球用的就是即将扫描的那张名为“zl的”图。。。然后赋值给它,如图:

Unity和Easy AR制作一个AR的APP_官网_06

默认的ImageTarget自己带的脚本是ImageTargetBehaviour。当我们调整ImageTargetBehaviour里的size这个参数时(例如大小设置为3),我们就会在Scene场景中看到图片了。如图:

 

Unity和Easy AR制作一个AR的APP_Startup_07

 

继续配置ImageTargetBehaviour里的参数

path 需要把StreamingAssets路径下的那张图片的全名写上包括图片格式,例如本案例的zl.png

Name 就是该路径下这个图片的名字

Storage 选择为Assets

loader这个地方去选择场景里的EasyAR_Startup这个物体下的名为ImageTracker的子物体。

上述步骤,如下图:

Unity和Easy AR制作一个AR的APP_官网_08

Unity和Easy AR制作一个AR的APP_赋值_09

 

Unity和Easy AR制作一个AR的APP_官网_10

至此所有的开发内容完成,接下来就是打包的配置了,在playersetting里面的公司名字这里写上我们最开始在easy ar的官网设置的项目的名字。如图:

Unity和Easy AR制作一个AR的APP_赋值_11

Unity和Easy AR制作一个AR的APP_赋值_12

之后就是普通的安卓打包过程了,这里不再赘述。然后安装后,记得给app访问摄像头的权限,然后进入app用手机扫描你设定的图片就会看到你想显示的东西。例如案例里的扫描zl那张图就会有一个球体出现在画面里。

注意:显示的物体不要太大而把图片给遮挡的太多了。遮挡多了就采集不到图片的信息了。合理调整图片和模型的比例以及位置。

 

标签:zl,物体,扫描,Unity,AR,ImageTarget,APP,图片
From: https://blog.51cto.com/u_8378185/5990713

相关文章

  • unity之人物移动到鼠标点击位置
    建立一个cube作为player,建立一个plane作为地面并且Tag设置为Terrain。将下面脚本NewBehaviourScript绑定到相机上。然后把cube拖到脚本里。点击鼠标左键在地面上即可看到cub......
  • unity调用windows取色器实现换色和保存颜色
    需求如下:要打包后的exe文件可以实现给地板换颜色,而且必须用取色器来选颜色,当下次打开的时候颜色还要保留成上次选择后的颜色。思路:unity自带的取色器只能在编辑状态用,打包......
  • unity4.6之UGUI之与代码结合及Text讲解
    UGUI与以往的NGUI不同之处很多其中一大特点就是UGUI把精灵图集的功能取消了。首先是我们看看UGUI的UI界面:其中有项是Text...也就是本节要讲的内容;说到text不得不说的是字......
  • Unity创建Animation动画无法播放问题
    前提:我是要使用animation的方式去播放动画,而不是animator状态机;是针对unity自己制作的动画,而不是外部导入进来的动画。 发现一个问题,我在unity中给一个cube创建一个animat......
  • Unity3D之sprite动画(Animation)的制作
    实例说明:忍者跑酷的player动画制作。。。这些都是用Sprite做的动画。。。在prioject面板里的一组sprite里面点击,之后看属性面板的SpriteEditor对这组Sprite进行编辑。。。......
  • unity3d相机跟随物体平滑移动(C#代码)
    usingUnityEngine;usingSystem.Collections;publicclassCameraFollow:MonoBehaviour{publicTransformtarget;privateVector3wantedPosition......
  • Unity3d碰撞器与触发器的区别详解(rigidbody移动和charactercontroller移动区别)
    Rigidbody或者charactercontroller移动才可以用collider的碰撞。正文:要产生碰撞必须为游戏对象添加刚体(Rigidbody)和碰撞器,刚体可以让物体在物理影响下运动。碰撞体是物理......
  • Vulnhub之Hacksudo Search靶机详细测试过程
    HacksudoSearch识别目标主机IP地址(kali㉿kali)-[~/Desktop/Vulnhub/Hacksudo_Search]└─$sudonetdiscover-ieth1-r192.168.56.0/24Currentlyscanning:192.1......
  • docker-reviewboard
    1、​​docker-reviewboard(让reviewboard安装、迁移更简单)​​2、​​ikatson​​/​​docker-reviewboard​​3、​​Docker入门之docker-compose​​4、​​docker​......
  • Elasticsearch学习笔记
    ​​最新ElasticSearch6实战教程​​​​全文搜索引擎Elasticsearch入门教程​​​​Elasticsearch学习,请先看这一篇!​​​​ElasticSearch简介​​​​Elasticsearch入门......