easyar与高通ar区别用下unity 3D吗?

扫一扫,访问微社区
后使用快捷导航没有帐号?
签到成功!您今天第{todayrank}个签到,签到排名竞争激烈,记得每天都来签到哦!已连续签到:{constant}天,累计签到:{days}天
关注:1635
当前位置: &
__________________________________________________________________________________
开发者干货区版块规则:
  1、文章必须是图文形式。(至少2幅图)
& && &2、文章字数必须保持在1500字节以上。(编辑器右下角有字数检查)
& && &3、本版块只支持在游戏蛮牛原创首发,不支持转载。
& && &4、本版块回复不得无意义,如:顶、呵呵、不错......【真的会扣分的哦】
& && &5、......
__________________________________________________________________________________
查看: 664|回复: 1
EasyAR尝鲜系列教程之Hello EasyAR
本帖为抢楼帖,欢迎抢楼!&
9排名<font color="#FF昨日变化10主题帖子积分
在线时间174 小时
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
才可以下载或查看,没有帐号?
各位朋友,大家好,我是秦元培,欢迎大家关注我的博客,我的博客地址是。从今天起博主将为大家带来EasyAR尝鲜系列教程,本教程适用的对象是增强现实应用开发者和开发者,在阅读本教程前请确保具备增强现实应用开发及游戏开发的相关基础知识。在本节及后续内容中,博主将以国产增强现实引擎EasyAR为主要开发平台来带领大家一起走进增强现实应用开发的世界,希望大家能够喜欢!
什么是增强现实?
为了让更多的人了解增强现实,所以在开始本文教程前,我们首先来了解下什么是增强现实。增强现实(Augmented Reality,简称 AR),它是一种将真实世界信息和虚拟世界信息进行融合和集成的新技术,这种技术的目标是在屏幕上把虚拟世界和现实世界进行叠加并在此基础上进行互动。增强现实是真实世界和虚拟世界的信息集成,具有实时交互性,是在三维尺度空间中增添定位虚拟物体。增强现实技术可广泛应用到军事、医疗、建筑、教育、工程、影视、娱乐等领域。增强现实是新型的人机交互和三维仿真工具,目前已发挥出了重要的作用,具有巨大的应用潜力。
增强现实应用现状
目前,增强现实在国内尚处在起步阶段。2012年4月Google发布的Google Class是全球唯一一款真正意义上实现增强现实技术的硬件设备。随着移动设备的普及和相关技术的成熟,增强现实开始逐渐地走进人们的生活。如国内首款聚合了目前移动互联最新增强现实技术的智能手机应用《城市镜头》以及中视典数字科技研发的VRP系统等。AR技术在人工智能、CAD、图形仿真、虚拟通讯、遥感、娱乐、模拟训练等许多领域带来了革命性的变化。
目前增强现实相关技术主要有开源社区的ARToolkit、面向商业化解决方案的Metaio和Vuforia等。
国产增强现实引擎EasyAR
EasyAR(Easy Augmented Reality)是视辰信息科技(上海)有限公司的增强现实解决方案系列的子品牌,其含义是希望让增强现实变得简单易实施。EasyAR提供了诸如手机APP互动营销、户外大屏幕互动活动、网络营销互动等形式在内的增强现实互动营销技术和解决方案。著作权归作者所有。EasyAR无需授权、无水印、无识别次数的限制,开放后可免费下载,无需任何费用,是一款完全免费的AR引擎。EasyAR具有强大的跨平台特性可支持Windows、 Mac OS、 和iOS等主流平台。从目前的情况来看,EasyAR的SDK是目前市场上同类产品中最为简单易用的,唯一的不足是产品刚发布不久尚未能提供完整的技术文档。
Hello EasyAR
好了,下面我们以EasyAR提供的Unity3D版本SDK为例来学习EasySDK的使用。在开始前请确保你的计算机上正确安装了以下开发工具或者硬件:
Unity3D(必选):主要的开发环境
JDK相关工具(必选):编译Android应用所需环境
Android SDK(必选):编译Android应用所需环境
摄像头(可选):如使用手机进行调试则不需要
在完成以上准备工作后:
打开EasyAR官网并登录官网,我们将在登陆后创建应用以获得开发所需的密钥以及SDK。如果尚未注册可以在注册后完成这一步骤。
点击创建应用,并在这里填入应用的名称和包的名称,此处以“EasyAR测试”和“com.easyar.first”为例,在创建完应用后可以在应用列表中找到当前创建的应用,点击显示可以查看当前应用对应的密钥。
点击“下载EasyAR SDK v1.0.1”完成SDK的下载。
解压下载的SDK压缩包,找到vc_redist目录安装对应平台的VC++运行库。请注意,即使在你的计算机上安装了VC++运行库,这里依然需要安装。Win8及Win8.1请先使用磁盘清理工具清理系统垃圾,否则可能会出现无法安装的。建议使用64位操作系统且安装x86和x64的VC++运行库。
找到SDK压缩包内的package/unity目录下的EasyAR.unitypackage文件并将其导入到Unity3D中。
在Unity3D中找到Scenes目录下的easyar场景并打开该场景,然后找到EasyAR节点名称,在右侧属性窗口中填入应用对应的密钥。
打开BuildSetting-&PlayerSetting在右侧属性窗口中填入应用对应的包名。
SDK默认提供了三张识别图片,我们选择每个人都有的身份证照片作为识别目标,在场景中找到ImageTargetDataSet-idback这个物体,找到它的子节点Cube。这意味着如果我们识别到了身份证照片,那么就会在身份证照片上显示一个Cube。如果大家手头上有自己喜欢的模型,可以将Cube隐藏,然后将模型添加进来,并为其添加VideoPlayerBehaviour.cs脚本。如手头上没有模型,这一步可以忽略。如图是我现在的场景效果:
好了,现在编译程序,将其导出为APK安装包,这样我们就可以在手机上测试EasyAR的效果啦。假如一切顺利的话,在手机上将会看到这样的画面。下面放点运行情况截图供大家参考:
作为一款国产的增强现实引擎,目前EasyAR的表现我还是比较满意的,虽然在识别的准确度上无法和国外的同类产品相比,但是它的简单易用确实是做得不错。作为一个程序员尝鲜更像是吃螃蟹,目前发现的问题及解决方案有:
编辑器提示DllNotFoundException错误,请安装SDK中对应的VC++运行库。
视频导入失败,Unity3D导入视频需要依赖苹果公司的QuickTime播放器,所以请安装最新版的QuickTime后重试。
在64位计算机上编译的Android应用可以正常运行,在32位计算机上编译的Android应用无法正常运行。具体表现如图
好了,作为整个系列的第一篇文章,我们至此对EasyAR有了一个较为直观的印象。在接下来的内容中,我们将对SDK中的内容进行更加深入的了解,因此希望大家继续关注我的博客,谢谢大家!
虚拟现实的产品图片;虚拟现实的交互性;虚拟现实是人工智能吗;虚拟现实技术的现状;虚拟现实开源;虚拟现实国产;虚拟现实仿真工程;虚拟现实人机交互;虚拟现实中视典;虚拟现实虚拟现实虚拟现实产品图片;虚拟现实交互性;虚拟现实是人工智能;虚拟现实和人工智能;虚拟现实加人工智能;虚拟现实人工智能;虚拟现实与人工智能;人工智能虚拟现实;人工智能和虚拟现实;人工智能与虚拟现实;虚拟现实技术现状;开源虚拟现实;国产虚拟现实那个好;国产虚拟现实;虚拟现实与仿真工程;虚拟现实与人机交互;人机交互虚拟现实;人机交互与虚拟现实;中视典虚拟现实;vrp虚拟现实;cs虚拟现实
每日推荐:
5550/1000排名<font color="#FF昨日变化30主题帖子积分
熟悉之中, 积分 550, 距离下一级还需 450 积分
熟悉之中, 积分 550, 距离下一级还需 450 积分
蛮牛币1125
在线时间166 小时
每日推荐:
认证开发者
经过游戏蛮牛认证的独立开发者5350人阅读
[Unity引擎](86)
各位朋友大家好,欢迎大家关注我的博客,我是秦元培,我的博客地址是。最近EasyAR终于迎来了一次重大的版本更新:v1.10,真可谓是“千呼万唤始出来”啊,所以在官方文档和示例项目基本完善的情况下,博主决定将EasyAR尝鲜系列教程继续下去。本次教程主要以官方新发布的Unity示例项目为基础来进行讲解,关注Androis/iOS原生应用开发的朋友请自行针对官方示例项目进行研究。好了,今天主要的内容是通过EasyAR SDK来自行构建一个ImageTarget的实例,采用Unity3D 4.6.4版本进行开发。
EasyAR SDK的结构
将EasyAR SDK导入Unity3D后会在项目的Assets根目录下生成EasyAR和Plugins两个文件夹。其中EasyAR文件夹中提供了开发AR应用相关的标准接口、材质、Shader和Prefab,Plugins文件夹中提供了针对各个平台的插件。好了,下面我们来介绍EasyAR SDK中提供的标准接口:
* ARBuilder: 该类提供了EasyAR初始化的相关方法,我们在编写EasyAR配置类的时候会用到这个类,这是一个可以直接使用的类。
* ImageTargetBehaviour: 该类是一个抽象类,我们需要对其进行override,可以将这个类理解为ImageTarget生命周期相关的一个类,在实际使用中需要配合ITargetEventHandle这个接口来使用。
* VideoPlayerBaseBehaviour: 该类是一个组件,我们可以使用这个组件来播放视频。其原理和ImageTarget类似,所不同的地方是ImageTarget在识别成功后会显示一个模型,而这里则是使用一个隐藏的物体来播放视频,VideoPlayerBaseBehaviour负责控制视频的播放、暂停等工作。
* ITargetEventHandle: 这是一个接口,通过该接口可以捕捉到识别过程中的OnTargetFound、OnTargetLost、OnTargetLoad和OnTargetUnload四个事件,对于一个基本的AR应用来说,我们通常需要关注的是OnTargetFound、OnTargetLost这两个方法。
构建第一个ImageTarget项目
好了,在了解了EasyAR中常用的标准接口以后,我们下面来着手构建第一个ImageTarget项目,和我们第一次接触EasyAR不同,这次我们会编写些简单地代码,打开场景填入应用程序密钥(Key)然后运行它,这种方式在这里会显得略LOW。
EasyAR的初始化
首先我们在Assets/EasyAR/Prefabs目录下找到EasyAR这个预制体,然后将其拖放到场景中,这样我们就创建了基本的EasyAR应用场景,接下来我们要做的事情就是在这个场景中填入各种各样的识别物。为了让EasyAR正常工作,我们首先要编写一个初始化EasyAR的脚本:
using UnityE
using System.C
using EasyAR;
public class EasyARConfig : MonoBehaviour
应用程序密钥
[TextArea(1,10)]
public string K
public void Awake()
if(string.IsNullOrEmpty(Key))
Debug.Log("请先输入应用程序密钥");
ARBuilder.Instance.InitializeEasyAR(Key);
ARBuilder.Instance.EasyBuild();
我确信这个类简单到彻底,它需要开发者在编辑器中填入KEY然后再Awake方法中完成对EasyAR的初始化,就是这样简单,我们这里将这个脚本附加到EasyAR这个物体上去,这样我们就完成了引擎的初始化工作,下面我们就可以专注于AR内容的产生了。
制作一个ImageTarget
接下来我们在Assets/EasyAR/Prefabs目录中找到ImageTarget这个预制体,将其拖放到场景中,确保它在摄像机的视野范围内。我们注意到默认情况下它附加了一个ImageTargetBehaviour脚本,我们在前面已经说过,这个类是一个抽象类,抽象类通常是不做任何事情的,因此我们需要继承这个类来编写一个具体类,我们将这个具体类命名为CustomImageTargetBehaviour。下面给出它的代码实现:
using UnityE
using System.C
using EasyAR;
public class CustomImageTargetBehaviour :ImageTargetBehaviour,ITargetEventHandler
protected override void Start()
base.Start();
HideObjects(transform);
隐藏模型的方法
要隐藏的Transform
void HideObjects(Transform trans)
for (int i = 0; i & trans.childC ++i)
HideObjects(trans.GetChild(i));
if (transform != trans)
gameObject.SetActive(false);
显示模型的方法
要显示的Transform
void ShowObjects(Transform trans)
for (int i = 0; i & trans.childC ++i)
ShowObjects(trans.GetChild(i));
if (transform != trans)
gameObject.SetActive(true);
实现ITargetEventHandler接口中的OnTargetFound方法
void ITargetEventHandler.OnTargetFound(Target target)
ShowObjects(transform);
实现ITargetEventHandler接口中的OnTargetLost方法
void ITargetEventHandler.OnTargetLost(Target target)
HideObjects(transform);
实现ITargetEventHandler接口中的OnTargetLoad方法
void ITargetEventHandler.OnTargetLoad(Target target, bool status)
实现ITargetEventHandler接口中的OnTargetUnload方法
void ITargetEventHandler.OnTargetUnload(Target target, bool status)
可以注意到在这个类中我们主要做了两件事情:第一,定义了隐藏和显示识别模型的方法HideObjects和ShowObjects,其作用是在没有识别到Target的时候隐藏物体,在识别到Target的时候显示物体;第二,实现了ITargetEventHandler接口并在OnTargetFound和OnTargetLost两个方法中实现我们第一步希望达到的目的。至此,我们完成了一个基本的AR识别组件,我们下面所有的AR识别物体都是通过这个组件来工作的,所以我们从场景中的ImageTarget物体上移除默认的ImageTargetBehaviour脚本然后为其添加我们定义的CustomImageTargetBehaviour脚本。
编写完脚本以后我们就可以着手制作识别图和Marker了,EasyAR最让人喜欢的一点就是你可以按照自己的意愿来制作识别图和Marker。虽然Vuforia在识别效果上比EasyAR更好点,可是对程序员来说选择一个透明的产品方案比面对着黑箱子进行调试要明智得多。EasyAR中的识别图相对来说比较简单,因为我们只需要选择一张图片然后为其创建一个材质,再将这个材质附加到ImageTarget物体上就可以了。此外还会涉及到某些参数的设置,我们下面会提到。好了,我们继续选择官方示例中的idback这张图片来作为我们的识别图,因为身份证每个人都有可以随时用来进行测试,而一般的图片则需要打印出来制成硬质卡片来使用。我们在Assets目录中创建一个StreamingAssets目录,将官方示例中targets.json和idbcak.jpg两个文件拷贝过来。创建材质就不再说了,这是Unity3D中非常非常基础的内容。我们将创建好的材质附加到ImageTarget物体上以后,可能在场景中并不会看到对应的识别图,这是因为我们没有为其配置参数。具体的参数配置如下图:
具体这些参数的定义请大家自己去看文档,因为我这里说得再明白如果大家不看等于我没有说。好了,下面我们来创建Marker,这个就比较简单了,我们直接找一个模型缩放到合适的大小然后拖拽到ImageTarget这个物体下面就可以了。如图是博主参照官方示例制作的两个识别图及其Marker:
走向成功的关键步骤
1、在EasyAR物体的EasyARConfig组件中填入从官网申请的KEY。
2、在BuildSetting中填写KEY对应的AppID。
3、安装SDK中附带的VC++2015运行库。
4、如要编译Android版本,请确保安装Java环境和Android SDK
更多的问题请自行到官方文档中对照寻找解决办法。
因为在我32位的计算机上无法正确运行这个示例,所以截图就等到以后有时间了在更新到这里吧!好了,今天的内容就是这样了,希望大家喜欢,谢谢大家!
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:954041次
积分:11859
积分:11859
排名:第996名
原创:189篇
评论:1176条
(1)(3)(2)(5)(1)(4)(2)(5)(4)(1)(5)(4)(2)(1)(5)(4)(1)(7)(13)(1)(2)(1)(9)(8)(2)(5)(9)(23)(8)(13)(18)(7)(1)(1)(2)(1)(1)(1)(2)(1)(3)(1)&>&&>&&>&&>&EasyAR(unity AR涂色技术)
EasyAR(unity AR涂色技术)
上传大小:35.3MB
适合初学者学习
综合评分:0(0位用户评分)
所需积分:3
下载次数:7
审核通过送C币
创建者:zhihua_w
创建者:nigelyq
创建者:zhou_rr
课程推荐相关知识库
上传者其他资源上传者专辑
开发技术热门标签
VIP会员动态
您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:!
android服务器底层网络模块的设计方法
所需积分:0
剩余积分:720
您当前C币:0
可兑换下载积分:0
兑换下载分:
兑换失败,您当前C币不够,请先充值C币
消耗C币:0
你当前的下载分为234。
EasyAR(unity AR涂色技术)
会员到期时间:
剩余下载次数:
你还不是VIP会员
开通VIP会员权限,免积分下载
你下载资源过于频繁,请输入验证码
您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:!
若举报审核通过,可奖励20下载分
被举报人:
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:13305人阅读
[Unity引擎](86)
各位朋友,大家好,我是秦元培,欢迎大家关注我的博客,我的博客地址是。从今天起博主将为大家带来EasyAR尝鲜系列教程,本教程适用的对象是增强现实应用开发者和Unity3D游戏开发者,在阅读本教程前请确保具备增强现实应用开发及Unity3D游戏开发的相关基础知识。在本节及后续内容中,博主将以国产增强现实引擎EasyAR为主要开发平台来带领大家一起走进增强现实应用开发的世界,希望大家能够喜欢!
什么是增强现实?
为了让更多的人了解增强现实,所以在开始本文教程前,我们首先来了解下什么是增强现实。增强现实(Augmented Reality,简称 AR),它是一种将真实世界信息和虚拟世界信息进行融合和集成的新技术,这种技术的目标是在屏幕上把虚拟世界和现实世界进行叠加并在此基础上进行互动。增强现实是真实世界和虚拟世界的信息集成,具有实时交互性,是在三维尺度空间中增添定位虚拟物体。增强现实技术可广泛应用到军事、医疗、建筑、教育、工程、影视、娱乐等领域。增强现实是新型的人机交互和三维仿真工具,目前已发挥出了重要的作用,具有巨大的应用潜力。
增强现实应用现状
目前,增强现实在国内尚处在起步阶段。2012年4月Google发布的Google Class是全球唯一一款真正意义上实现增强现实技术的硬件设备。随着移动设备的普及和相关技术的成熟,增强现实开始逐渐地走进人们的生活。如国内首款聚合了目前移动互联最新增强现实技术的智能手机应用《城市镜头》以及中视典数字科技研发的VRP系统等。AR技术在人工智能、CAD、图形仿真、虚拟通讯、遥感、娱乐、模拟训练等许多领域带来了革命性的变化。
目前增强现实相关技术主要有开源社区的、面向商业化解决方案的和等。
国产增强现实引擎EasyAR
EasyAR(Easy Augmented Reality)是视辰信息科技(上海)有限公司的增强现实解决方案系列的子品牌,其含义是希望让增强现实变得简单易实施。EasyAR提供了诸如手机APP互动营销、户外大屏幕互动活动、网络营销互动等形式在内的增强现实互动营销技术和解决方案。著作权归作者所有。EasyAR无需授权、无水印、无识别次数的限制,开放后可免费下载,无需任何费用,是一款完全免费的AR引擎。EasyAR具有强大的跨平台特性可支持Windows、 Mac OS、 Android和iOS等主流平台。从目前的情况来看,EasyAR的SDK是目前市场上同类产品中最为简单易用的,唯一的不足是产品刚发布不久尚未能提供完整的技术文档。
Hello EasyAR
好了,下面我们以提供的Unity3D版本SDK为例来学习EasySDK的使用。在开始前请确保你的计算机上正确安装了以下开发工具或者硬件:
Unity3D(必选):主要的开发环境
JDK相关工具(必选):编译Android应用所需环境
Android SDK(必选):编译Android应用所需环境
摄像头(可选):如使用手机进行调试则不需要
在完成以上准备工作后:
打开并登录官网,我们将在登陆后创建应用以获得开发所需的密钥以及SDK。如果尚未注册可以在注册后完成这一步骤。
点击创建应用,并在这里填入应用的名称和包的名称,此处以“EasyAR测试”和“com.easyar.first”为例,在创建完应用后可以在应用列表中找到当前创建的应用,点击显示可以查看当前应用对应的密钥。
点击“下载EasyAR SDK v1.0.1”完成SDK的下载。
解压下载的SDK压缩包,找到vc_redist目录安装对应平台的VC++运行库。请注意,即使在你的计算机上安装了VC++运行库,这里依然需要安装。Win8及Win8.1请先使用磁盘清理工具清理系统垃圾,否则可能会出现无法安装的问题。建议使用64位操作系统且安装x86和x64的VC++运行库。
找到SDK压缩包内的package/unity目录下的EasyAR.unitypackage文件并将其导入到Unity3D中。
在Unity3D中找到Scenes目录下的easyar场景并打开该场景,然后找到EasyAR节点名称,在右侧属性窗口中填入应用对应的密钥。
打开BuildSetting-&PlayerSetting在右侧属性窗口中填入应用对应的包名。
SDK默认提供了三张识别图片,我们选择每个人都有的身份证照片作为识别目标,在场景中找到ImageTargetDataSet-idback这个物体,找到它的子节点Cube。这意味着如果我们识别到了身份证照片,那么就会在身份证照片上显示一个Cube。如果大家手头上有自己喜欢的模型,可以将Cube隐藏,然后将模型添加进来,并为其添加VideoPlayerBehaviour.cs脚本。如手头上没有模型,这一步可以忽略。如图是我现在的场景效果:
好了,现在编译程序,将其导出为APK安装包,这样我们就可以在手机上测试EasyAR的效果啦。假如一切顺利的话,在手机上将会看到这样的画面。下面放点运行情况截图供大家参考:
作为一款国产的增强现实引擎,目前EasyAR的表现我还是比较满意的,虽然在识别的准确度上无法和国外的同类产品相比,但是它的简单易用确实是做得不错。作为一个程序员尝鲜更像是吃螃蟹,目前发现的问题及解决方案有:
编辑器提示DllNotFoundException错误,请安装SDK中对应的VC++运行库。
视频导入失败,Unity3D导入视频需要依赖苹果公司的QuickTime播放器,所以请安装最新版的QuickTime后重试。
在64位计算机上编译的Android应用可以正常运行,在32位计算机上编译的Android应用无法正常运行。具体表现如图
好了,作为整个系列的第一篇文章,我们至此对EasyAR有了一个较为直观的印象。在接下来的内容中,我们将对SDK中的内容进行更加深入的了解,因此希望大家继续关注我的博客,谢谢大家!
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:954044次
积分:11859
积分:11859
排名:第996名
原创:189篇
评论:1176条
(1)(3)(2)(5)(1)(4)(2)(5)(4)(1)(5)(4)(2)(1)(5)(4)(1)(7)(13)(1)(2)(1)(9)(8)(2)(5)(9)(23)(8)(13)(18)(7)(1)(1)(2)(1)(1)(1)(2)(1)(3)(1)

我要回帖

更多关于 easyar 的文章

 

随机推荐