Unity × EasyAR 实战教程 - 第1章:激活并使用 EasyAR

本章要点:

  1. 获取并使用 EasyAR 的 Licence Key
  2. 将3D模型直接投放到场景中

1. 获取并使用 EasyAR 的 Licence Key

本章主要介绍如何在 Unity 编辑器中使用 EasyAR SDK 。教程中的 Unity 编辑器为 Mac 版,版本是5.6。根据 EasyAR SDK 官方文档中的“平台需求 / Unity 兼容性”:“ EasyAR 支持 Unity4(4.6以上)和 Unity5 ”。

EasyAR SDK 官方文档中的“平台需求”:
http://www.easyar.cn/view/docs/Getting-Started/Platform-Requirements.html

如果你的 Unity 版本过低需要更新的话,可以选择 迅雷等下载工具 进行快速下载,Unity 官网提供了大多数版本的种子( torrent link ):
Unity download archive page
https://unity3d.com/cn/get-unity/download/archive

Unity 下载存档

关于下载和安装 Unity 的详细介绍可以参考下面的官方文档:
Downloading and installing Unity
https://docs.unity3d.com/Manual/InstallingUnity.html

通过下面的链接可以下载最新的 EasyAR SDK :
http://www.easyar.cn/view/download.html
“Unity × EasyAR 实战教程”系列中使用的 EasyAR SDK 的版本是1.3.1。

1.1. 导入 EasyAR SDK

首先,我们需要新建一个 Unity 工程,这是一个3D的工程(点这里,查看如何判断应该使用2D还是3D)工程名:UnityChanAR(也可以使用其他命名)。在即将开始制作的应用中,我们将会使用一个功能非常强大而且完全免费(需要确认是否可以用于商业目的)的3D模型—— Unity-chan ,这个模型可以从 Asset Store 里下载并导入工程。

打开 Asset Store 的方法是:在 菜单栏 中选择 Window > Asset Store 。想要将 Asset Store 窗口最大化,可以点击窗口右上角的标志:

将 Asset Store 窗口最大化

在 Asset Store 中搜索关键字 “unity-chan” 即可找到相关的模型:

"Unity-chan!" Model

书归正传,接下来导入 EasyAR SDK 。Mac 用户通过官网下载 EasyAR SDK ,解压后会得到一个 “EasyARSDK” 文件夹,再将该文件夹下的 unity / EasyAR.unitypackage 文件导入项目中即可。

关于导入资源( Asset )的详细说明可以参考下列文档:

1.2. 申请并使用 Licence Key

接下来,我们需要对 EasyAR SDK 进行简单地配置。

首先是在 Unity 编辑器中进行的操作:

  1. 将 Assets / EasyAR / Prefabs 文件夹内的 EasyAR_Startup 拖拽到 Hierarchy 视图中
  2. 删除场景中自带的 Main Camera( EasyAR_Startup 中包含了一个具有 Camera 功能的子对象—— RenderCamera )
将 EasyAR_Startup 添加到场景中

关于 Unity 编辑器的界面,可以参考以下文档,对各个部分做一个大概了解:
Learning the interface
https://docs.unity3d.com/Manual/LearningtheInterface.html

编辑器界面中的各个窗口和视图是可以任意进行重新布置的,上面截图中的界面跟默认的 Unity 界面不同。界面的个性化设置可以参考以下文档:
Customizing Your Workspace
https://docs.unity3d.com/Manual/CustomizingYourWorkspace.html

EasyAR_Startup 是一个预设( Prefab ),这是一种特殊的游戏对象( GameObject )。关于游戏对象预设的说明可以参考一下文档:

然后,我们要在 EasyAR 的官网申请 Licence Key ,用来激活 EasyAR SDK 。

  1. 在官网注册后登陆自己的账号,选择“开发”界面
  2. 点击“创建应用”,不要忘记 BundleID / PackageName
  3. 点击“显示”,查看生成的 Licence Key
申请 EasyAR 的 Licence Key

最后,我们回到 Unity 编辑器中,把申请好的 Licence Key 复制粘贴到下图的输入框里就行了:

在场景中使用刚刚申请的 Licence Key

官网也提供了相关文档,来说明如何配置 EasyAR SDK :
配置EasyAR Unity SDK
http://www.easyar.cn/view/docs/Getting-Started/Setting-up-EasyAR-Unity-SDK.html

2. 将3D模型直接投放到场景中

在上面的 配置EasyAR Unity SDK 这篇文档中提到了如何使用 ImageTarget ,关于这一部分内容,我们会在后面的教程里学习。在本章中,我们需要 EasyAR 在启动之后,直接把3D模型投放到场景里。

2.1. 将 unitychan 预设添加到场景中

下载并导入 Unity-chan 模型之后,在 Assets / UnityChan / Prefabs 文件夹下可以找到 unitychan 预设,然后,直接把这个预设添加到场景中即可。

将 unitychan 预设拖住到 Hierarchy 视图中

接下来,我们切换到 Game 视图,然后将 unitychan 的 Transform 组件调整为下面的样子:(也可以调整为自己希望的大小和位置)

调整 unitychan 的 Transform 组件

调整好之后,我们会在 Game 视图中看到:

在 Game 视图下可以看到 unitychan 模型

关于 Scene 视图和 Game 视图的介绍可以参考以下文档。其中,在关于 Scene 视图的介绍中提到了一些非常实用的快捷键。

2.2. 测试并保存场景

测试的时候会自动启用电脑的前置摄像头。在屏幕右上角有两个按钮,点击后可以改变 unitychan 的动作:

测试效果图

好啦!测试完成以后,记得保存一下修改后的场景。我们可以在 Project 窗口中新建文件夹:Assets / UnityChanAR / Scenes / ,并保存场景:

保存场景(我的场景名是“01”)

2.3. 场景中的 UI

我们已经发现,Game 视图和实际运行的场景并不太一样:在实际运行的场景中出现了很多 UI ,这些 UI 就是 IMGUI ,关于 IMGUI 的介绍可以查看以下文档:

Immediate Mode GUI (IMGUI)
https://docs.unity3d.com/Manual/GUIScriptingGuide.html

在屏幕右上角出现的,用来切换 unitychan 动作的 UI 是由下列代码实现:(这段代码来自 IdleChanger 脚本)

void OnGUI () {

// 使用了函数 GUI.Box ()
// 参数一定义一个方框
// 参数二定义一个字符串,用于标题
    GUI.Box(
            new Rect(Screen.width - 110 , 10 ,100 ,90), // 参数一
            "Change Motion" // 参数二
    );

// 使用了函数 GUI.Button () ,当按钮被点击时,该函数返回值为 True 
// 这样就可以执行 if 语句所包含的动作(调用 SetBool () 方法)
// 参数一定义了一个按钮的位置和大小
// 参数二定义了一个字符串,显示为按钮的名字
    if(
       GUI.Button(
                  new Rect(Screen.width - 100 , 40 ,80, 20),  // 参数一
                  "Next" // 参数二
                 )
      )
        anim.SetBool ("Next", true);

// 这一段定义的是“Back”按钮
    if(
       GUI.Button(
                  new Rect(Screen.width - 100 , 70 ,80, 20), 
                  "Back"
                 )
      )
        anim.SetBool ("Back", true);
}

我们也可以参考以下文档来对照上述的脚本:
IMGUI Basics
https://docs.unity3d.com/Manual/gui-Basics.html

除了 IMGUI 之外,Unity 还提供了另一种基于游戏对象的 UI 系统—— UGUI ,本教程中主要介绍 UGUI ,这是一种功能更加强大也更为常用的 UI 系统。

Unity × EasyAR 实战教程:

  1. Unity × EasyAR 实战教程 - 第1章:激活并使用 EasyAR
  2. Unity × EasyAR 实战教程 - 第2章:使用 UGUI 改进项目
  3. Unity × EasyAR 实战教程 - 第3章:LeanTouch入门
  4. Unity × EasyAR 实战教程 - 第4章:导出并安装
  5. Unity × EasyAR 实战教程 - 第5章:使用ImageTarget和“脱卡”
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,056评论 5 474
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,842评论 2 378
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 148,938评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,296评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,292评论 5 363
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,413评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,824评论 3 393
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,493评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,686评论 1 295
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,502评论 2 318
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,553评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,281评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,820评论 3 305
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,873评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,109评论 1 258
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,699评论 2 348
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,257评论 2 341

推荐阅读更多精彩内容