Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用

这篇具有很好参考价值的文章主要介绍了Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

版本说明

参考PICO developer 官方文档,本人unity版本为2022.116f1c1, PICO Unity Integration SDK-214.
sdk最新版官网下载:PICO Unity Integration SDK
博主使用的版本在这里提供一个链接:
以下过程均基于以上版本,按照如下流程操作比较合适。

环境搭建

①Unity编辑器需要支持安卓平台,在 添加模块 窗口处,勾选 Android SDK & NDK Tools 和 OpenJDK。务必勾选 Android Build Support 下的所有选项。
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
然后创建3D项目,然后进入Unity 编辑器页面。
②导入PICO Unity Integration SDK.将下载好的 SDK 压缩包解压,得到一个包含 package.json 文件的文件夹。
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
在Unity 编辑器页面内的上方菜单栏处,选择 Windows > Package Manager,在 Package Manager 窗口中,点击 + > Add package from disk。
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
选择 package.json 文件并导入。
导入完成后,将看到 PXR SDK Setting 窗口,关闭即可。
③启用 PICO XR 插件。从上方菜单栏处,选择 Edit > Project Settings。在 Project Settings 窗口中,点击 XR Plug-in Management > 安卓设置图标。
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
勾选PICO,不要勾选其他平台的选项。
④设置相关参数。
进入Project Settings > Player:
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
在上图中,展开安卓图标下的Other Settings标签页,
将 Minimum API Level 设置为 Android 10.0 (API Level 29)。将 Target API Level 设置为 Automatic (highest installed)。一般已默认为该设置。
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
在下方的 Configuration 设置区域,将 Scripting Backend 设置为 IL2CPP。将 Target Architectures 设置为 ARM64,并取消勾选 ARMv7。
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
接下来创建一个 XR 场景:
⑤升级 XR Interaction Toolkit.
进入Windows > Package Manager > XR Interaction Toolkit,将右侧samples下的内容都导入。
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
有关该工具包的版本选择,可以参考官方文档。
⑥添加XR摄像机。在 Hierarchy 窗口中,右击默认添加的 Main Camera,然后点击 Delete 将其删除。
点击 + > XR > XR Origin (Action-based),将 XR Origin 添加至场景。
XR Origin 物体包含以下元素:
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
选中 XR Origin。点击 Inspector 窗口底部的 Add Component 按钮。搜索 PXR_Manager 脚本,然后双击将其添加。
⑦配置手柄。
在 Hierarchy 窗口中,展开 XR Origin > Camera Offset,选中 LeftHand Controller。
在 Inspector 窗口中,点击 XR Controller (Action-Based) 面板右上角的 预设 图标。
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
双击添加 XRI Default Left Controller 设置文件,导入默认左手柄设置:
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
按相同步骤配置 RightHand Controller。
在 Hierarchy 窗口中,选中 XR Origin。点击 Inspector 窗口底部的 Add Component 按钮。搜索 Input Action Manager 脚本,然后双击将其添加。
在 Input Action Manager 脚本区域,展开 Action Assets 列表,将XRI Default Input Actions 将其添加至 Element 0 配置项。
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
至此,基础 XR 场景搭建完成。
自己开发的应用不希望有【版权保护】的检测,因此在导出前,在Unity上方菜单栏处,点击选择 PXR_SDK > Platform Settings。取消勾选User Entitlement Check:
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
否则受版权保护的限制,无法打开应用。具体可参考这篇文章。

导出及相关设置

①PICO4内是安卓平台,在 Build Settings 窗口中,从 Platform 列表处选择 Android。
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
点击 Switch Platform,若该按钮变为上图所示的Build,则表示平台切换成功。点击Build,将项目打包,输出如下文件:
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发

②配置pico开发环境,参考官方文档,开启PICO一体机,前往设置>通用>关于本机,光标移至软件版本号,连续点击八次左右,左侧导航栏下方出现开发者,即可开启开发者模式。
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
点击开发者,打开右上角的USB调试开关
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
然后使用数据线【usb-c】连接电脑和pico4,将打包出的apk文件直接复制到pico中的Download文件夹内,就传输成功了,只传apk就可以。接着在pico一体机内安装apk,查看效果。

手柄控制移动和旋转

现在为项目增加一些功能,通过手柄实现这样的效果:左手柄的摇杆控制视角前后左右移动,右手柄的摇杆控制视角旋转。
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
在 Hierarchy 窗口中,选中 XR Origin下的Camera Offset,点击 Inspector 窗口底部的 Add Component 按钮。搜索 Locomotion System, Continuous Move Provider(Action-based), Continuous Turn Provider(Action-based) 双击添加。
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
按照上图所示,将XR Origin拖到红色方框内,将Camera Offset拖到蓝色方框内,对黄色方框内的属性进行点选配置。Move Speed可以控制视角移动的速度,Turn Speed控制转向的速度。

按右手柄B、A键设定位置

Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
在资源中找到XRI Default input Actions, 双击唤出面板,如上图所示。
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
点击Actions后面的,新建两个action,分别命名为Upstairs和Downstairs, 点击将它们的ActionType设置为Button.
Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
点击Upstairs后面的,添加绑定Binding, 将Path改为secondaryButton [RightHand PICO Controller], Downstairs 同理,将Path改为primaryButton [RightHand PICO Controller].
在Hierarchy中新建空物体,命名为PICO_buttonInputs,将如下脚本拖到该物体上:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.InputSystem;
using UnityEngine.XR.Interaction.Toolkit.Inputs;
public class PICO_buttonInputs : MonoBehaviour
{
    // Start is called before the first frame update
    public InputActionReference Upstairs;
    public InputActionReference Downstairs;
    public Transform picoXR;
    void Start()
    {
        Upstairs.action.started += DoUpstairs;
        Downstairs.action.started += DoDownstairs;
    }
    private void OnDestroy()
    {
        Upstairs.action.started -= DoUpstairs;
        Downstairs.action.started -= DoDownstairs;
    }

    private void DoUpstairs(InputAction.CallbackContext obj)//13
    {
        picoXR.position += new Vector3(0, 1.0f, 0);
    }

    private void DoDownstairs(InputAction.CallbackContext obj)//1
    {
		picoXR.position -= new Vector3(0, 1.0f, 0);
    }
}

Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用,unity,android,游戏引擎,vr,个人开发
将XR Origin和刚刚设定的两个action拖入脚本内相应位置,如果有自定的功能可以相应的修改代码,最好加一个平面在场景内方便看效果。

问题小结

博主尝试使用chfsgui工具【HTTP 文件共享服务器】在电脑和pico之间传输apk,可是在pico浏览器内下载出来的是zip形式,没有找到解压的办法,否则就可以无线传输了。

还有有关手柄抓取键切换材质、射线检测方面的以及unity内纹理相关出现的问题,下次继续分享(●’◡’●)文章来源地址https://www.toymoban.com/news/detail-773746.html

到了这里,关于Unity+pico4开发过程及问题记录,创建一个自己的pico安卓应用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • PICO4开发实战一:节奏光剑(VR)(需求文档)

    目的:配置PXR环境,并借助Unity自带的基础模型搭建一个简单的场景。基于该场景实现方块生成、移动和方块和光剑的交互(光剑碰到方块则将方块销毁)。 1、V1版本完成页面 2、V1基本功能需求介绍 (1)配置PXR基础环境创建XR Origin并 绑定光剑 (2)环境搭建 一共六个物体:

    2024年02月15日
    浏览(65)
  • Unity基于PICO4设备实现VR下的多场景切换(巨详细,案例全csdn仅此一家)

    打开unity Hub,先点击左侧项目一栏,再点击右上角的新项目,弹出创建窗口后,选择URP模板,自定义项目名称和位置,取消勾选版本管理,最后点击创建项目即可(注意:我这里的unity版本为2020.3.37f1c1 LTS)。 点击创建项目后,第一次创建项目时,需等待一段时间加载,项目初

    2024年02月10日
    浏览(65)
  • Pico neo3+Unity开发记录

    先去官网下载sdk,然后解压。  解压后得到(一会从unity导入json)  打开unity PackageManager  选择第一个导入刚才解压的json等待unity自动编译即可 此时,这个开发工具包是旧版本,先不要升级(官网给的方案是直接升级到最新版,新版开发方式略有不同)  然后打开player设置打开

    2024年02月03日
    浏览(41)
  • 【VRTK】【PICO】如何快速创建一个用VRTK开发的PICO项目

    每次新建一个VRTK的PICO项目总是做一些重复工作,于是就想着搞成一个基本的包,把基本的设置都放进去,今后新做项目直接导这个包就行了。 完整资源包请见本篇博客的绑定资源。 这个包是我为了快速开发基于VRTK的PICO应用设置的基础项目包。每次开发新的PICO应用可以先导

    2024年01月22日
    浏览(47)
  • Pico neo3 pico4第三方VR游戏资源分享 Pico 4一体机安装VR游戏教程

    。 当我们入手VR眼镜的初心都是想用来体验身临其境的3D虚拟视觉,无论是玩游戏,还是看电影都是为了体验VR设备给我们带来的顶级感官感受,享受科技带来的视觉体验。 我们的VR设备到手的第一步肯定是要先串流到电脑,然后和steam连接,并下载好steamVR,这样我们的基础设

    2024年02月09日
    浏览(48)
  • Pico 4一体机游戏下载教程(附游戏资源包)Pico4串流第三方VR游戏教程讲解

    我们看一下pico4的配置参数。他采用雪镜造型,pancake方案的加持,使他的前端头显和后端固垫都更加的轻薄。其单眼分辨率达到2160×2160,PP1提升到1200,视场角为105度。pro版本还纳人面部识别和眼动追踪功能。采用无极调节的瞳距调节方案,并且支持彩色透视等等功能。 好了

    2024年01月25日
    浏览(212)
  • 记录一下Unity使用过程中出现的问题

    1.(2022.3.16) 问题:Unity打开已存在的项目时,一直停留在Hold on... Importing assests界面。 原因及解决方案:Unity Hub中项目设置的默认位置带有中文,将其修改为不含中文的路径即可。 (更新) 重新打开又出现类似问题,一使用VS进行脚本编辑时再次出现加载框,尝试先打开V

    2024年02月08日
    浏览(51)
  • ElasticSearch|ES 连接超时及创建连接失败问题定位过程记录

    socket.timeout:等待源端服务器响应超时 ConnectionRefusedError:尝试创建连接被拒绝 ES 集群中某个节点的 ES 主进程被杀(由于服务器内存不足导致),导致该节点 ES 重新拉起,报 “尝试创建连接被拒绝”; ES 集群中某个节点的服务器内存不足,导致该节点 ES 的 cache 被清空,E

    2024年02月04日
    浏览(53)
  • 又开发好一个系统,详细记录软著申请过程

    大家好,我是小悟 又开发好一个系统,详细记录软著申请过程 经过几个通宵达旦的撸代码之后,又开发好了一个系统,和以往一样,系统开发好了少不了申请软件著作权证书,兄弟们,软著申请搞起来啊。 在版权保护中心后台提交资料,没有账号的需要先注册一个账号。很

    2024年02月04日
    浏览(38)
  • Pico 一体机开发记录

    大概2020-2021年间的工作实况,可能有些问题已解决,某些API已改动,权且当做参考吧 1.软件发布后在设备运行时,场景颠倒? (Pico G2老版本开发问题) 在Unity找到AndroidManifest文件; 把这行代码注释掉即可。 2.视频播放时卡顿很严重? (4K版项目开发问题) 设备是Pico neo2,通

    2024年02月05日
    浏览(66)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包