从零开始,如何用Unity为Oculus Go研发一款App应用
文章相关引用及参考:映维网
本文来自于Jake Steinerman
(映维网 2018年05月30日)本周我的公司举办了首次内部黑客马拉松。我听到这一消息就马上申请报名,而我脑海中立刻浮现出具体的项目:为我闪亮的Oculus Go开发一款VR体验。长话短说,为Go开发体验没有我原本想象中那样简单,但我在24小时内解决了所有问题,并且开发出我的应用程序。今天我希望向大家分享完整的Go应用开发指南,其涵盖了我所经历的所有错误。
你需要什么:
- Unity 3D(免费)
- Android Studio(免费)
- 搭载一枚像样显卡的PC(我采用的是13英寸的Surface Book 2,价格约为2千美元)
- 当然,还有Oculus Go(199美元)
以下是具体步骤:
一. 下载并安装Unity(以及Android Plugin)
1.1安装免费的Unity 2018.1个人版(点击前往)
1.2 安装时请确保添加Android Build支持
二. 下载并安装Android Studio(点击前往)
三. 获取Oculus Core Utilities for Unity(点击前往)
四. Android开发软件设置
4.1 打开Android Studio
4.2 点击欢迎屏幕右下角的“Configure”,然后点击“SDK Manager”
4.3 在SDK Platforms选项卡选中API Level 21到27的复选框。
4.4 在“SDK Tool”选项卡选中右下角的“Show Package Details(显示软件包详细信息)”旁边的复选框。
4.5 在“Android SDK Build-Tools 28-rc2”下选中最高编号的复选框。注意:不是以“-rc1”或“-rc2”结尾的项目。截至本文发稿时,这个最高编号的项目是27.0.3。
4.6 在“SDK Tools”选中以下选项: LLDB;Android SDK Platform-Tools;Android SDK Tools 25.2.5;NDK
4.7 点击“Apply”,然后系统将安装你在SDK选项卡中选择的所有内容。
4.8 返回欢迎界面,点击右下角的“Configure”,然后依次选择Project Defaults > Project Structure
4.9 在这里你将获得SDK,JDK和NDK的文件路径。在文本编辑器中复制这些内容(我们很快就会用到它们)
4.10 设置你的“environment variables(环境变量)”:
4.11 在Windows上搜索“environment variables”。你可以依次进入Control Panel(控制面板)>System Properties(系统属性)。转到Advanced Tab(高级选项卡),然后是右下角的“Environment Variables(环境变量)”按钮。
4.12 在顶头位置,设置/修改/添加以下变量:
将环境变量JAVA_HOME设置为JDK位置。
将环境变量ANDROID_HOME设置为Android SDK位置。
将环境变量ANDROID_NDK_HOME设置为Android NDK位置。
将JDK工具目录添加到PATH,即C:\ Program Files \ Android Studio \ jre \ bin
4.13 在Unity中开发安卓应用时遇到的常见错误之一是“Unable to list target platforms(无法列出目标平台)”。这令人感到沮丧,具体解决方案请参阅这篇文章(点击前往)
删除android sdk“tools”文件夹:[Your Android SDK root]/tools -> tools
下载SDK工具(点击前往)
将其解压到Android SDK根目录
五. 设置Unity
5.1 打开Unity并创建一个新项目
5.2 在打开新项目(或现有项目)后,我们需要将其设置为安卓。
5.3 转到File > Build Settings
5.4 选择Android,然后切换平台。(如果在第一次安装Unity时没有添加Android支持,你现在必须执行此操作,然后重新启动Unity)。
5.5 关闭Build Settings窗口。
5.6 转到Edit > Preferences
5.7 点击External Tools标签
5.8 向下滚动到Android部分
5.9 将SDK,JDK和NDK路径设置为你在步骤4中复制的内容。
5.10 关闭Preferences窗口。
5.11 转到Edit > Project Settings > Player
5.12 向下滚动到XR Settings。单击Virtual Reality Supported旁边的复选框。
5.13 确认Oculus出现在SDK列表中。如果没有,请点击右侧的“+”,然后选择Oculus。
5.14 向上滚动回顶部,并设置你的公司名称和产品名称。
5.15 然后向下滚动至“Other”。 将Package Name名称字段设置为com.[CompanyName].[ProductName]
5.16 对于Minimum API Level,我将其设置此API Level 21
六. 导入Oculus示例场景
我们首先导入Oculus为我们准备的预制作示例场景。
6.1 使用你在步骤3中下载的OculusUtilities Unity软件包
6.2 在Unity窗口中将OculusUtilities.unity拖放到项目的Asset文件夹中。出现提示时导入。
6.3 在Asset文件夹中,转到Oculus>VR>Scenes。双击GearVrControllerTest。
6.4 在场景的目录结构中,依次向下打开OVRCameraRig>TrackingSpace>LeftHandAnchor>TrackedRemote>GearVrControllerModel,找到OculusGoControllerModel。双击它。
七. 在Go中启用开发者模式
要为Oculus Go进行本地开发,你必须在配套应用程序中启用Developer Mode(开发者模式)。但在启用之前,你需要在Oculus Dashboard上创建(或加入)开发者组织。
要加入现有组织:
- 你需要向管理员请求访问现有组织。
- 你会收到一封电子邮件邀请。在接受后,你将成为本组织的成员。
创建一个新组织:
- 转到Oculus Dashbord(点击前往)
- 填写适当的信息。2.1 启用开发者模式
将Oculus Go纳入开发者模式:
- 在移动设备上打开Oculus应用程序。
- 在设置菜单中,选择你用于开发的Oculus Go头显。
- 选择More Settings。
- 切换至Developer Mode。
八. 设置Android Debug Bridge
我们已经接近完成(我保证)。在将Unity应用移动到Go之前,我们需要安装Android Debug Bridge(ADB),以及Oculus Go的驱动程序。
下载并安装Oculus Go ADB驱动程序:
- 下载包含驱动程序的zip文件(点击前往)。
- 解压缩文件。
- 右键单击.inf文件并选择Install。
下载并安装ADB(点击前往)(请参阅以下视频中5点40分开始的步骤)
九. 最后一步
9.1 通过micro-USB连接你的PC。
9.2 在最后一步的ADB窗口中,运行adb devices以确认系统已检测到Go。
9.3 返回到Unity,转到File > Build Settings
9.4 单击“Add Open Scenes”,并确保只选中场景GearVrControllerTest的复选框。
9.5 点击Build
9.6 选择.APK文件的目标文件夹。我喜欢在项目中创建一个“Builds”文件夹。然后保存。
9.7 在.APK生成后,在文件资源管理器中导航到这里。将其复制到第8步中ADB的同一目录里。
9.8 作为ADB窗口备份。
9.9 运行adb install [NameOfYourApp] .apk
9.10 你现在应该看到文件已经转移到Oculus Go。在一两分钟后,系统已经会提示“Success”。
恭喜你,你做到了。
现在如果要运行应用程序,戴上Oculus Go,依次前往Library > Unknown Sources。你应该可以在Unknown Apps列表的最后一页中看到应用的Bundle ID。点击并启动。