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 × EasyAR 实战教程 - 第1章:激活并使用 EasyAR_第1张图片
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 窗口最大化,可以点击窗口右上角的标志:

Unity × EasyAR 实战教程 - 第1章:激活并使用 EasyAR_第2张图片
将 Asset Store 窗口最大化

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

Unity × EasyAR 实战教程 - 第1章:激活并使用 EasyAR_第3张图片
"Unity-chan!" Model

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

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

  • Importing from the Asset Store
    https://docs.unity3d.com/Manual/AssetStore.html
  • Asset Packages
    https://docs.unity3d.com/Manual/AssetPackages.html
  • Importing Assets
    https://docs.unity3d.com/Manual/ImportingAssets.html

1.2. 申请并使用 Licence Key

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

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

  1. 将 Assets / EasyAR / Prefabs 文件夹内的 EasyAR_Startup 拖拽到 Hierarchy 视图中
  2. 删除场景中自带的 Main Camera( EasyAR_Startup 中包含了一个具有 Camera 功能的子对象—— RenderCamera )
Unity × EasyAR 实战教程 - 第1章:激活并使用 EasyAR_第4张图片
将 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 )。关于游戏对象预设的说明可以参考一下文档:

  • GameObjects
    https://docs.unity3d.com/Manual/GameObjects.html
  • GameObject Class
    https://docs.unity3d.com/Manual/class-GameObject.html
  • ** Prefabs**
    https://docs.unity3d.com/Manual/Prefabs.html

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

  1. 在官网注册后登陆自己的账号,选择“开发”界面
  2. 点击“创建应用”,不要忘记 BundleID / PackageName
  3. 点击“显示”,查看生成的 Licence Key
Unity × EasyAR 实战教程 - 第1章:激活并使用 EasyAR_第5张图片
申请 EasyAR 的 Licence Key

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

Unity × EasyAR 实战教程 - 第1章:激活并使用 EasyAR_第6张图片
在场景中使用刚刚申请的 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 预设,然后,直接把这个预设添加到场景中即可。

Unity × EasyAR 实战教程 - 第1章:激活并使用 EasyAR_第7张图片
将 unitychan 预设拖住到 Hierarchy 视图中

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

Unity × EasyAR 实战教程 - 第1章:激活并使用 EasyAR_第8张图片
调整 unitychan 的 Transform 组件

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

Unity × EasyAR 实战教程 - 第1章:激活并使用 EasyAR_第9张图片
在 Game 视图下可以看到 unitychan 模型

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

  • The Scene view
    https://docs.unity3d.com/Manual/UsingTheSceneView.html
  • The Game view
    https://docs.unity3d.com/Manual/GameView.html

2.2. 测试并保存场景

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

测试效果图

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

Unity × EasyAR 实战教程 - 第1章:激活并使用 EasyAR_第10张图片
保存场景(我的场景名是“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和“脱卡”

你可能感兴趣的:(Unity × EasyAR 实战教程 - 第1章:激活并使用 EasyAR)