Unity配置Android开发环境与第一个Demo

简介: ARFoundation之路-环境配置(Android)


参照学习的资料

ARFoundation之路-环境配置(Android)

查看开发配置

Edit->Preferences->External Tools

如果像下图出现黄色警告,说明开发配置没有弄好

导入Android开发插件

Windows->Package Manager->点击下拉框选择Packages:Unity Registry

找到ARCore XR Plugin和AR Foundation,点击右侧Install安装

切换开发平台

File->Build Settings...打开设置窗口

选中”Android“,然后点击“Switch Platform”切换平台(因为我们最终程序要跑在Android手机上)

设置开发环境

点击Player Settings...

  1. 在Company Name和Product Name文本框中分别填写公司名和产品名
  2. 删除Other Settings选项卡下的Vulkan,
  3. 设置ARCore兼容的Android最低版本,找到“Minimun API Level”选项,,点击其下拉菜单,选择“Android7.0‘nougat’(API level 24)”或以 上
  4. “Target API Level”的设置可以是Automatic(highest installed)
  5. XR plug-in Management中勾选ARCore

搭建基础框架

  1. 项目重命名:在Scenes工程文件夹下,重命名场景文件为“Test3”,与此项目同名

  2. 在 Projects 窗口 Assets 目录下新建 Prefabs、Scripts 两个文件夹,同时在 Hierarchy 窗口中删除 Main Camera(因为 ARFoundation AR Session Origin 只带有一个 AR 摄像机,Directional Light 可根据需要决定是否删除)
  3. 在 Hierarchy 窗口选中 AR Session Origin 对象,然后在 Inspector 窗口中点击 Add Component 按 钮,并在弹出的搜索中搜索“AR Plane Manager”(用于检测平面和管理平面的可跟踪对象管理器),并添加该组件
  4. 将 Project 窗口中 Prefabs 文件夹下的 AR Default Plane 拖到 AR Plane Manager 组件下的 Plane  Prefab 属性框

  5. 在 Project 窗口 Scripts 文件夹下,空白处点击鼠标右键,在弹出的级联菜单中依次选择 Create -- >C# Script,新建一个脚本文件,并命名为 AppController
    在这一步遇到的报错:这会影响到第六步cube中预制体的放置

Can't add script component 'AppController' because thescript class cannot be found. Make sure that there areno compile errors and that the file name and classname match.


  1. 解决方案:
    Unity3d 拖拽脚本报错Can't add the script component "" because the script class cannot be found
  2. 经过以上步骤,整体 AR 应用框架已完全搭建起来了,最后,我们在 Hierarchy 窗口中制作一个 cube, 为其赋上红色材质,将其 Scale 缩放成(0.1,0.1,0.1),最后将其制作成 Prefab 并删除 Hierarchy 场景中 的 cube在这一步我遇到一个问题因为第五步的这个报错,在选中cube后的Inspector窗口下添加组件也找不到这个脚本最后一步,在 Hierarchy 窗口中选中 AR Session Origin,为其添加前面编写的 AppController 脚本 (可以使用 Add Component 在搜索框中搜索 AppController 添加,也可以直接把 AppController 脚 本拖到 AR Session Origin 对象上),并将上一步制作的 cube 拖到 AppController 脚本的 Spawn Prefab 属性框中。进入到脚本中把脚本类名更改与脚本文件名相同即可遇到的问题:如何改变物体的颜色解决方案:Unity改变物体颜色(添加材质Materials)
  1. 在Project目录下建一个Material文件
  2. 更改材质的颜色
  3. 将新材质拖到Cube上的Mesh Renderer下的Materials中的Element 0中

连接设备调试应用

  1. 连接设备必须保证是支持运行ARCore的,可通过官网信息查看更多信息,这里只列出支持AR的安卓(中国)设备
    https://developers.google.cn/ar/devices#android_china
    安卓(中国)
    在中国,设备不随 Google Play 商店提供。此处列出的 Android 设备通过适用于 AR 的 Google Play 服务支持 ARCore,该服务可作为单独的可从以下应用商店下载的服务获得:
  • 小米应用商店(小米应用商店)
  • 华为应用商店(华为应用商店)
  • OPPO APP Market(OPPO软件商店)
  • Samsung Galaxy Apps (三星应用市场)
  • V-Appstore(vivo应用商店)
    ARCore 支持在中国地区销售的这些设备:
制造商 设备型号 评论
Huawei Honor 10 支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p 支持深度API
Huawei Honor Magic 2
Huawei Honor V20 支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p
Huawei Maimang 7
Huawei Mate 20 支持深度API
Huawei Mate 20 Pro
Huawei Mate 20 X 支持深度API
Huawei Nova 3 支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p 支持深度API
Huawei Nova 3i
Huawei Nova 4 支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p 支持深度API
Huawei P20 支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p 支持深度API
Huawei P20 Pro 支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p
Huawei P30 支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p 支持深度API
Huawei P30 Pro 支持多种 GPU 纹理分辨率 - 2048x1536、1280x960、480p 支持深度API
Huawei Porsche Design Mate RS
Huawei Porsche Design Mate 20 RS
Oppo A53 5G
Oppo A93 5G
Oppo Find X3 支持深度API
Oppo Find X3 Pro 支持深度API
Oppo F19 Pro+ 支持深度API
Oppo K5 支持多种 GPU 纹理分辨率 - 1080p、720p、480p
Oppo K7x 支持深度API
Oppo K9 5G
Oppo Reno
Oppo Reno 10x Zoom 支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p
Oppo Reno Ace 支持深度API
Oppo Reno Ace 2
Oppo Reno Z
Oppo Reno2 支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p
Oppo Reno2 Z 支持多种 GPU 纹理分辨率 - 1080p、720p、480p
Oppo Reno4 SE 5G 支持深度API
Oppo Reno5 5G
Oppo Reno5 K 5G
Oppo Reno5 Pro 4G
Oppo Reno5 Pro 5G 支持深度API
Oppo Reno5 Pro+ 5G 支持深度API
Oppo Reno6 Pro+ 5G
realme Q
realme Q2 Pro 5G
realme Q3 5G
realme X
realme X Lite
realme X2
realme X2 Pro
realme X3
realme X50 Pro Player
realme X7 5G
realme X7 Pro 5G
realme V5 5G
realme 真我V13 5G
realme 真我GT
realme realme GT Neo 支持深度API
Samsung Galaxy Note9
Samsung Galaxy S9 Exynos 支持多种 GPU 纹理分辨率 - 1080p、720p、480p 支持深度API
Samsung Galaxy S9 Qualcomm 支持多种 GPU 纹理分辨率 - 2048x1536、1280x960、480p 支持深度API
Samsung Galaxy S9+ Exynos 支持多种 GPU 纹理分辨率 - 1080p、720p、480p 支持深度API
Samsung Galaxy S9+ Qualcomm 支持多种 GPU 纹理分辨率 - 2048x1536、1280x960、480p 支持深度API
Samsung Galaxy S10e Exynos 支持多种 GPU 纹理分辨率 - 1080p、720p、480p 支持深度API
Samsung Galaxy S10e Qualcomm 支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p 支持深度API
Samsung Galaxy S10 Exynos 支持多种 GPU 纹理分辨率 - 1080p、720p、480p 支持深度API
Samsung Galaxy S10 Qualcomm 支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p 支持深度API
Samsung Galaxy S10+ Exynos 支持多种 GPU 纹理分辨率 - 1080p、720p、480p 支持深度API
Samsung Galaxy S10+ Qualcomm 支持多种 GPU 纹理分辨率 - 1440x1080、1280x960、480p 支持深度API
Samsung Galaxy S10 5G 支持多种 GPU 纹理分辨率 - 1080p、720p、480p 支持深度API 支持飞行时间 (ToF) 硬件深度传感器
Vivo iQOO
Vivo iQOO 5 5G
Vivo iQOO 5 Pro 5G
Vivo iQOO Neo3 5G
Vivo iQOO U1
Vivo iQOO Z1x
Vivo NEX S
Vivo NEX 3 4G/5G
Vivo S7 5G
Vivo X23
Vivo X50 5G
Vivo X50 Pro
Vivo X50 Pro+
Vivo V2046A
Vivo V2047A
Vivo V2056A
Vivo Y51s
Vivo Y70s
Xiaomi Mi Mix 2S 支持多种 GPU 纹理分辨率 - 1920x1440、1280x960、480p
Xiaomi Mi Mix 3
Xiaomi Mi 8 SE
Xiaomi Mi 8 SE
Xiaomi Mi 9
Xiaomi Mi 10 Ultra
  1. 具体连接设备的方法详见汪祥春老师的博客ARCore之路-连接设备调试应用,照着做我并没有什么障碍,故不在记录

运行效果

  1. 连接好设备后,进入Build Settings中点击Build and Run

  2. 查看效果
    第一个Demo
    视频可见,默认的平面检测出的效果,平面是浅黄的,边界是黑色,而且有平面重叠,效果不是很好


相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
相关文章
|
3月前
|
Java 开发工具 Android开发
Android与iOS开发环境搭建全解析####
本文深入探讨了Android与iOS两大移动操作系统的开发环境搭建流程,旨在为初学者及有一定基础的开发者提供详尽指南。我们将从开发工具的选择、环境配置到第一个简单应用的创建,一步步引导读者步入移动应用开发的殿堂。无论你是Android Studio的新手还是Xcode的探索者,本文都将为你扫清开发道路上的障碍,助你快速上手并享受跨平台移动开发的乐趣。 ####
|
27天前
|
缓存 前端开发 Android开发
【04】flutter补打包流程的签名过程-APP安卓调试配置-结构化项目目录-完善注册相关页面-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程
【04】flutter补打包流程的签名过程-APP安卓调试配置-结构化项目目录-完善注册相关页面-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程
75 12
【04】flutter补打包流程的签名过程-APP安卓调试配置-结构化项目目录-完善注册相关页面-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程
|
1月前
|
Dart 前端开发 Android开发
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
36 1
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
|
2月前
|
Java 开发工具 Android开发
安卓与iOS开发环境对比分析
在移动应用开发的广阔天地中,安卓和iOS两大平台各自占据半壁江山。本文深入探讨了这两个平台的开发环境,从编程语言、开发工具到用户界面设计等多个角度进行比较。通过实际案例分析和代码示例,我们旨在为开发者提供一个清晰的指南,帮助他们根据项目需求和个人偏好做出明智的选择。无论你是初涉移动开发领域的新手,还是寻求跨平台解决方案的资深开发者,这篇文章都将为你提供宝贵的信息和启示。
42 8
|
4月前
|
开发工具 Android开发 iOS开发
深入解析安卓与iOS开发环境的优劣
【10月更文挑战第4天】 本文将深入探讨安卓和iOS两大主流移动操作系统的开发环境,从技术架构、开发工具、用户体验等方面进行详细比较。通过分析各自的优势和不足,帮助开发者更好地理解这两个平台的异同,从而为项目选择最合适的开发平台提供参考。
52 3
|
4月前
|
编译器 Android开发
配置环境变量,使CMakeLists.txt可直接使用Android NDK工具链编译项目
配置环境变量,使CMakeLists.txt可直接使用Android NDK工具链编译项目
|
4月前
|
Java Android开发 Windows
玩转安卓之配置gradle-8.2.1
为安卓开发配置Gradle 8.2.1,包括下载和解压Gradle、配置环境变量、修改配置文件以增加国内镜像,以及在Android Studio中配置Gradle和JDK的过程。
199 0
玩转安卓之配置gradle-8.2.1
|
4月前
|
开发工具 Android开发 Swift
安卓与iOS开发环境的差异性分析
【10月更文挑战第8天】 本文旨在探讨Android和iOS两大移动操作系统在开发环境上的不同,包括开发语言、工具、平台特性等方面。通过对这些差异性的分析,帮助开发者更好地理解两大平台,以便在项目开发中做出更合适的技术选择。
|
2天前
|
JavaScript 搜索推荐 Android开发
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
21 8
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡

热门文章

最新文章

  • 1
    如何修复 Android 和 Windows 不支持视频编解码器的问题?
  • 2
    【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
  • 3
    当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
  • 4
    【04】flutter补打包流程的签名过程-APP安卓调试配置-结构化项目目录-完善注册相关页面-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程
  • 5
    APP-国内主流安卓商店-应用市场-鸿蒙商店上架之必备前提·全国公安安全信息评估报告如何申请-需要安全评估报告的资料是哪些-优雅草卓伊凡全程操作
  • 6
    【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
  • 7
    Android经典面试题之Kotlin中Lambda表达式和匿名函数的区别
  • 8
    【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
  • 9
    【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
  • 10
    Unity 使用VideoPlayer播放视频,实现播放,暂停,快进的效果