Unity ARKit示例:第3部分

我们创建一个使用命中检测的应用程序。

本文是从Unity ARKit开始的系列文章的一部分, 示例:第1部分

放置立方体

在此示例中,我们将使用Unity-ARKit-Plugin中的另一个API 我们将利用它的功能来检测从相机取景器中心投射的光线对物理世界中物体的撞击。

特别是,当按下“ 放置”按钮时,如果检测到击中,则应用程序将放置一个30厘米的立方体。

首先,将Hello World场景另存为Scenes文件夹中的Place Cube ,然后:

  1. 我们删除了CubeCanvasEventSystem GameObjects
  2. 我们添加一个Button ; 将其重命名为PlaceCube
  3. 我们更新PlaceCube的 TextGameObject ; 将其对齐方式设置为居中,将文本设置放置

接下来,我们需要创建模型(或预制模型)以实例化GameObject

  1. 我们在场景中创建一个Cube GameObject
  2. 我们将其变换位置设置为(0,0,0)并将缩放比例设置为(0.3、0.3、0.3
  3. 我们创建一个文件夹Assets> Prefabs> Place Cube并将其拖入其中(这将创建一个预制件)
  4. 最后,我们从场景中删除多维数据集

我们创建一个脚本; 资产/脚本/位置多维数据集/PlaceCube.cs:

观察结果:

  • 该代码是不言自明的
  • 在此代码中, ARPoint是相机取景器的中心

我们将此脚本作为组件添加到PlaceCube上

我们将Cube预制件拖到脚本上的Hit Hit预制值。

然后,将HandleClick方法附加到PlaceCube按钮:

  1. PlaceCube的“ 按钮”组件上添加(加号按钮) “单击()”条目
  2. PlaceCube GameObject拖到条目上
  3. 在条目上选择PlaceCube:HandleClick方法

现在,我们按照示例Unity ARKit:第1部分的构建过程小节中的说明进行操作。 将应用程序构建并加载到iOS设备。 请记住以下几点:

  • 我们可以像以前一样保留包标识符
  • 确保仅在构建中包括Place Cube场景

现在,在iOS设备上运行该应用程序,我们可以看到该应用程序正在运行。

注意 :由于ARKitRemote不支持点击检测,因此我们必须将应用程序构建并加载到iOS设备上以测试该应用程序。

下一步

在下一篇文章Unity ARKit示例:第4部分中 ,我们将继续探索Unity ARKit