【MR开发】在Pico设备上接入MRTK3(一)——在Unity工程中导入MRTK3依赖

写在前面的话

在Pico上接入MRTK3,目前已有大佬开源。

https://github.com/Phantomxm2021/PicoMRTK3

也有值得推荐的文章。
MRTK3在PICO4上的使用小结

但由于在MacOS上使用MRTK3,无法通过Mixed Reality Feature Tool工具管理MRTK3安装包。
故记录一下完整的流程,仅作备忘。

开发环境
Unity编辑器:2022.3.49
Pico SDK:v3.0.0
MRTK3:MixedRealityToolkit-Unity的release-2024-08-29分支


MRTK3简介

MRTK3 是 Unity 的第三代 Microsoft 混合现实工具包。 它是 Microsoft 驱动的开源项目,旨在加速 Unity 中的跨平台混合现实开发。 此新版本建立在 Unity 的 XR 管理系统和 XR 交互工具包基础之上。 以下是它的一些功能:

为空间交互和 UI 提供跨平台输入系统和构建基块。
通过编辑器内模拟实现快速原型制作,让你能够立即看到变化。
作为可扩展的框架运行,使开发人员能够交换出核心组件。

MR工具包:MRTK3

在Unity工程中导入MRTK3

以下几种方式选择一种即可,我们需要在Unity中导入以下MRTK的依赖(speech相关依赖若不使用可以不导入)
导入的依赖汇总

方式1: 使用MR Feature Tool安装MRTK

在Windows系统上,可以通过使用混合现实功能工具导入MRTK3包体至Unity工程,工具下载地址:Mixed Reality Feature Tool

打开工具,选择Unity工程目录,勾选MRTK3,直接安装即可。

方式2: 使用源码的形式进行安装

由于当前使用的mac电脑,无法使用MRFeature Tool工具。

  1. 从git上down下源码,git仓库:MixedRealityToolkit-Unity
    这里我选择的是较新的release分支。
    分支选择

  2. 打开文件夹,查看MRTK相关依赖。(这里选中了14个依赖,在后续的步骤中我们需要将其导入到Unity工程)
    14个MRTK依赖

  3. 在unity中通过“Package Manager”导入这14个依赖

  4. 添加“com.microsoft.mrtk.graphicstools.unity”依赖(重要)
    在’unity工程目录/Packages/manifest.json’文件中添加‘graphicstools’依赖。

    "com.microsoft.mrtk.graphicstools.unity": "https://github.com/microsoft/MixedReality-GraphicsTools-Unity.git?path=/com.microsoft.mrtk.graphicstools.unity#v0.6.6",

manifest.json
若没有导入graphicstools,则会有以下报错提示。
在这里插入图片描述

方式3: 使用整合包

整合包资源下载地址:MRTK3整合包下载链接

  1. 下载资源包,解压
  2. 将其拷贝至Unity工程目录
    工程的package目录

此外,这里需要注意检查manifest.json文件中是否引入了“com.microsoft.mrtk.graphicstools.unity”依赖
检查文件

问题汇总

  1. graphicstools导入失败

解决方式:请检查VPN代理或是直接通过git下载到本地后,再通过“PackageManager”导入。

在这里插入图片描述
2.MRTK某个依赖导入失败

解决方式:检查这个依赖的前置依赖是否导入成功。(例如,下图中的问题就是由于graphicstools未导入成功导致的。)

在这里插入图片描述


后续步骤请点击下列链接查看


  • 【MR开发】在Pico设备上接入MRTK3(二)在Unity中配置Pico SDK
  • 【MR开发】在Pico设备上接入MRTK3(三)在Unity中运行MRTK示例

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/452568.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jmeter使用文档

文章目录 一、安装使用1、下载2、bin/jmeter.properties介绍 二、windows使用1、微调(1)界面样式(2)修改语言 2、简单使用3、各组件详解(1)CSV 数据文件配置(2)BeanShell取样器 三、…

Pair的基本概念

概述 当一个方法需返回两个值、并且两个值都有重要意义时,我们一般会用Map的key、value来表达。 但是如果仅返回两个值,就用管理一堆key/value键值对的HashMap等结构,有点大材小用,增加了数据结构的复杂度。所以便出现了pair这个…

RAG流程的实现与改进

一、 RAG流程图 数据入库:读取本地数据并切成小块,并把这些小块经过编码embedding后,存储在一个向量数据库中(下图1——6步);相关性检索:用户提出问题,问题经过编码,再在…

探索Python中的多线程与多进程

在Python编程中,多线程和多进程是两个重要的概念,它们被用来提高程序的执行效率。本文将深入探讨这两个概念,并对比它们在Python中的实现方式。 一、多线程 多线程是一种并发执行的程序设计方法。在Python中,我们可以使用thread…

【C++_string类练习】仅仅反转字母

题目链接:仅仅反转字母 解题思路: 这种反转字符的题目我第一个想到的方法就是:双指针 一个指针在前start,一个指针在后back, 如果指针所指向的位置的值是字母,那么两个指针位置的值就进行交换&#xff0…

Leetcode 反转字符串中的单词

这个Java代码解决了“反转字符串中的单词顺序”的问题,具体思想如下: 1. 去除字符串首尾的空格 s.trim() 方法用于去除输入字符串 s 中的前导和尾随空格。这样做是为了防止在后续步骤中多余的空格对结果产生影响。 2. 按空格分割字符串 s.split(&quo…

Ingress-nginx中HTTPS的强制转发

文章目录 在使用aws 的NLB转发流量到ingress时,发现NLP上生成的转发配置不符合正常预期,如下图: ingress-nginx service 配置如下: apiVersion: v1 kind: Service metadata:annotations:service.beta.kubernetes.io/aws-load-b…

智能去毛刺:2D视觉引导机器人如何重塑制造业未来

机器人技术已经深入到各个工业领域中,为制造业带来了前所未有的变革。其中,2D视觉引导机器人技术以其精准、高效的特点,在去毛刺工艺中发挥着越来越重要的作用。本文将为您介绍2D视觉引导机器人技术的基本原理及其在去毛刺工艺中的应用&#…

Node.js学习笔记

回顾: javascript 可以在浏览器运行 (js代码会JavaScript的解析引擎执行)chrome 》V8 (性能最好)FireFox 》 奥丁猴safri 》JSCoreIE浏览器 》查克拉JavaScript可以在浏览器端操作DOM 和BOM每一个浏览器都内置了B…

php生成PDF文件(FPDF)

FPDF即“Free PDF”,FPDF类库提供了基本的PDF创建功能,其源代码和使用权是免费的。 PDF格式文档优势 通用:PDF文档在UNIX和Windows系统均可正常使用。 安全:PDF文档可设置为只读模式,并且可以添加密码等保护措施。 美…

JavaScript:闭包、防抖与节流

一,闭包 1,什么是闭包 闭包是指一个函数和其周围的词法环境(lexical environment)的组合。 换句话说,闭包允许一个函数访问并操作函数外部的变量。 闭包的核心特性: 函数内部可以访问外部函数的变量即使外部函数已经返回,内部…

ApacheShiro反序列化 550 721漏洞

Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码和会话管理个漏洞被称为 Shiro550 是因为在Apache Shiro的GitHub问题跟踪器中,该漏洞最初被标记为第550个问题,721漏洞名称也是由此而来 Shiro-550 CVE-2016-4437 Shiro反序列化Docker复现 …

Pytest参数详解 — 基于命令行模式!

1、--collect-only 查看在给定的配置下哪些测试用例会被执行 2、-k 使用表达式来指定希望运行的测试用例。如果测试名是唯一的或者多个测试名的前缀或者后缀相同,可以使用表达式来快速定位,例如: 命令行-k参数.png 3、-m 标记(…

在wsl2下将Ubuntu从一个盘移动到其他盘

参考文章: wsl下将Ubuntu从c盘移动到其他盘 WSL数据迁移(迁移ext4.vhdx) WSL 系统迁移(2),导入虚拟机磁盘映像 .vhdx ext4/fs WSL2迁移后默认登陆用户为root的解决方案 操作过程: 1.查看当前系统中wsl分发版本 …

系统托盘图标+快捷启动(Python)

QkStart 我把这个程序命名为QkStart 代码 # -*- coding: utf-8 -*- # Environment PyCharm # File_name QkStart |User Pfolg # 2024/10/19 22:06 import threading import time import pystray from PIL import Image from pystray import MenuItem, Menu import o…

【网络安全】缓存欺骗问题之查看个人资料接口

未经许可,不得转载。 文章目录 正文正文 目标网站 target.com,查看个人资料页面时,API 端点为/get_user,完整的 URL 是 https://target.com/web-api/v1/get_user?timestamp=123456(其中 timestamp 是一个易受攻击的参数)。 我注意到响应中有一个 cf-cache-status= MISS…

【ESP32-IDFV5.3.1开发】带SSL的MQTT-demo连接教程

目录 1.VSCODE以及IDF环境配置(略) 2.准备demo 2.1打开VSCODE,主菜单创建示例 找到SSL对应demo,点击创建,并成功创建项目,点击编译,显示编译成功即可以下一步。 确认该demo支持的开发板是你手上的开发板 3.修改demo配…

了解EasyNVR及EasyNVS,EasyNVR连接EasyNVS显示授权超时如何解决?什么原因?

我们先来了解NVR批量管理软件/平台EasyNVR,它深耕市场多年,为用户提供多种协议,兼容多种厂商设备,包括但不限于支持海康,大华,宇视,萤石,天地伟业,华为设备。 NVR录像机…

基于模型设计的智能平衡移动机器人-基础实验SPI

目录 SPI介绍 模型搭建 SPI介绍 SPI即Serial Peripheral Interface是高速同步串行输入/输出端口。SPI目前被广泛用于外部移位寄存器、D/A、A/D、串行EEPROM、LED显示驱动器等外部芯片的扩展。与前文介绍的SCI最大的区别是,SPI是同步串行接口。 SPI接口的通信原理简单&#…