<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Posts on XR技术研习社</title><link>https://www.xrstudy.net/posts/</link><description>Recent content in Posts on XR技术研习社</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Tue, 15 Sep 2026 10:00:00 +0800</lastBuildDate><atom:link href="https://www.xrstudy.net/posts/index.xml" rel="self" type="application/rss+xml"/><item><title>PICO 串流测试报 IndexOutOfRangeException: renderPassIndex 的两个排查方法</title><link>https://www.xrstudy.net/posts/pico-pdc-renderpassindex-error/</link><pubDate>Tue, 15 Sep 2026 10:00:00 +0800</pubDate><guid>https://www.xrstudy.net/posts/pico-pdc-renderpassindex-error/</guid><description>&lt;p&gt;在使用 PDC（PICO Developer Center）进行串流测试，是测试 PICO 项目的一种快捷手段。但是用过几次的开发者都知道，PICO 目前的方案依然不太稳定，时常会遇到各种意想不到的问题。其中一种高频报错会导致串流测试无法正常进行：测试时，Console 窗口会连续输出 &lt;code&gt;IndexOutOfRangeException:renderPassIndex&lt;/code&gt; 报错，其堆栈指向 &lt;code&gt;UnityEngine.XR.XRDisplaySubsystem:GetRenderPass&lt;/code&gt;，其症状如下图所示：&lt;/p&gt;&#10;&lt;p&gt;&lt;img src="https://www.xrstudy.net/images/posts/pico-pdc-renderpassindex/01-console-error.png" alt="Console 连续输出 IndexOutOfRangeException:renderPassIndex，堆栈指向 XRDisplaySubsystem:GetRenderPass"&gt;&lt;/p&gt;&#10;&lt;p&gt;此时不妨试试以下两种解决方法：&lt;/p&gt;&#10;&lt;h2 id="方法一测试之前确保不选中任何游戏对象尤其是-camera"&gt;方法一：测试之前确保不选中任何游戏对象（尤其是 Camera）&lt;/h2&gt;&#10;&lt;p&gt;&lt;img src="https://www.xrstudy.net/images/posts/pico-pdc-renderpassindex/02-object-selected.png" alt="测试前选中了某个游戏对象"&gt;&lt;/p&gt;&#10;&lt;p&gt;以上是易报错情况——测试前选中了某个游戏对象，尤其是包含了 Camera 的游戏对象。&lt;/p&gt;&#10;&lt;p&gt;&lt;img src="https://www.xrstudy.net/images/posts/pico-pdc-renderpassindex/03-nothing-selected.png" alt="测试前点击 Hierarchy 窗口空白处，不选中任何对象"&gt;&lt;/p&gt;&#10;&lt;p&gt;以上是不易报错情况：测试前点击 Hierarchy 窗口空白处，确保没有选中任何游戏对象，然后再进行串流测试，此时报错大概率会消失并能正常进行串流测试。&lt;/p&gt;&#10;&lt;p&gt;如果执行以上操作后仍然报错，可尝试第二种方法。&lt;/p&gt;&#10;&lt;h2 id="方法二确保-scene-窗口和-game-窗口不同时出现"&gt;方法二：确保 Scene 窗口和 Game 窗口不同时出现&lt;/h2&gt;&#10;&lt;p&gt;如果窗口布局如下图所示，Scene 和 Game 窗口同时呈现在 Unity 编辑器中，也可能引发此类报错。&lt;/p&gt;&#10;&lt;p&gt;&lt;img src="https://www.xrstudy.net/images/posts/pico-pdc-renderpassindex/04-scene-game-split.png" alt="Scene 和 Game 窗口同时呈现"&gt;&lt;/p&gt;&#10;&lt;p&gt;此时可尝试调整界面布局，确保 Scene 和 Game 窗口不同时呈现在编辑器中，如下图所示，将 Scene 和 Game 窗口叠放，或者选择一种不会同时出现以上两个窗口的 Layout，比如 Default 布局。&lt;/p&gt;&#10;&lt;p&gt;&lt;img src="https://www.xrstudy.net/images/posts/pico-pdc-renderpassindex/05-scene-game-stacked.png" alt="Scene 和 Game 窗口叠放（Tab 方式）"&gt;&lt;/p&gt;&#10;&lt;p&gt;调整以后再进行串流测试，报错随即消失，从而能够正常测试。&lt;/p&gt;&#10;&lt;h2 id="并不仅限于-pico-和-xr"&gt;并不仅限于 PICO 和 XR&lt;/h2&gt;&#10;&lt;p&gt;从报错堆栈可以看出，异常发生在 Unity XR 显示子系统获取 Render Pass 的环节。目前更合理的推测是：当 Unity 的多个渲染视图或预览状态同时活跃时——比如 Scene 与 Game 窗口并存、选中了带预览的对象，又叠加了 PDC 串流的渲染流程——就可能触发 Unity 编辑器或 XR 显示子系统的状态同步问题，从而导致请求的 &lt;code&gt;renderPassIndex&lt;/code&gt; 与当前可用的 Render Pass 数量不一致。&lt;/p&gt;</description></item><item><title>从 PICO 文档看未来短期内的 Unity 版本选择</title><link>https://www.xrstudy.net/posts/pico-unity-version-choice/</link><pubDate>Mon, 14 Sep 2026 10:00:00 +0800</pubDate><guid>https://www.xrstudy.net/posts/pico-unity-version-choice/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;本文仅针对国内 PICO VR 开发者。&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&lt;p&gt;面对 Unity 政策调整与 VR 行业变化，选择哪个 Unity 的版本，始终是目前开发者要面临的一个问题。在之前的直播中也提到过一个切入点：对 XR 平台厂商的倾向性保持关注。所以，今天来看一下 PICO 方面的倾向性。&lt;/p&gt;&#10;&lt;h2 id="来自-pico-官网-sdk-下载页的线索"&gt;来自 PICO 官网 SDK 下载页的线索&lt;/h2&gt;&#10;&lt;p&gt;&lt;img src="https://www.xrstudy.net/images/posts/pico-unity-version-choice/01-pico-sdk-unity-versions.png" alt="PICO 官网 SDK 资源下载页中各 SDK 标注的 Unity 版本要求（截至 2026 年 8 月底）"&gt;&lt;/p&gt;&#10;&lt;p&gt;从上图各 SDK 标注的 Unity 版本要求（截至 2026 年 8 月底）中，能读出三个信号：&lt;/p&gt;&#10;&lt;p&gt;&lt;strong&gt;信号一：未来产品（Project Swan）的版本下限，锚定在 2022.3。&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;strong&gt;信号二：针对 PICO 现有型号（PICO 3/4/Ultra）的开发，官方提供的 SDK 均支持 Unity 2022，某些工具（如 PICO Unity OpenXR SDK）甚至最低支持 Unity 2020。&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;strong&gt;信号三：整个下载页面并没有出现&amp;quot;团结引擎&amp;quot;字样。&lt;/strong&gt;&lt;/p&gt;&#10;&lt;h2 id="结论unity-2022-可以继续作为主力开发版本"&gt;结论：Unity 2022 可以继续作为主力开发版本&lt;/h2&gt;&#10;&lt;p&gt;由以上信号可见，PICO 官方目前保持中立，同时稍微兼顾了一下 Unity 6。而这些版本范围的交集，便是 Unity 2022——分家前的最后一代。所以，未来短期，Unity 2022 仍可作为 PICO 项目开发的主力版本。&lt;/p&gt;</description></item><item><title>如何解决 Cursor 开发 Unity 时的代码提示失效问题</title><link>https://www.xrstudy.net/posts/cursor-unity-code-completion-fix/</link><pubDate>Wed, 04 Feb 2026 12:22:00 +0800</pubDate><guid>https://www.xrstudy.net/posts/cursor-unity-code-completion-fix/</guid><description>&lt;h2 id="引言"&gt;引言&lt;/h2&gt;&#10;&lt;p&gt;随着 AI 辅助编程工具的兴起，越来越多的 Unity 开发者希望将 Cursor、Trae 等 AI 代码编辑器引入日常开发流程。然而，与 Visual Studio、VS Code 等传统编辑器不同，这些新兴工具并未获得 Unity 官方的原生支持，在项目开发中会遇到代码上下文缺失、类型引用失效等问题。&lt;/p&gt;&#10;&lt;p&gt;本文将系统性地分析该问题的成因，以 Cursor 为主要研究对象，提供两种可行的解决方案，帮助开发者顺利完成 AI 编程工具与 Unity 项目的集成配置。&lt;/p&gt;&#10;&lt;h2 id="问题背景为什么需要指定默认代码编辑器"&gt;问题背景：为什么需要指定默认代码编辑器？&lt;/h2&gt;&#10;&lt;h3 id="unity-项目的解决方案机制"&gt;Unity 项目的解决方案机制&lt;/h3&gt;&#10;&lt;p&gt;Unity 在设计之初便考虑到了与外部代码编辑器的协作需求。为实现这一目标，Unity 通过内置的 IDE 支持插件（如 Visual Studio Editor、Visual Studio Code Editor）自动生成 C# 解决方案文件（&lt;code&gt;.sln&lt;/code&gt;）及项目文件（&lt;code&gt;.csproj&lt;/code&gt;）。&lt;/p&gt;&#10;&lt;p&gt;&lt;img src="https://www.xrstudy.net/images/posts/cursor-unity-code-completion-fix/01-unity-ide-packages.png" alt="Unity IDE 支持插件"&gt;&lt;/p&gt;&#10;&lt;p&gt;当开发者通过指定的编辑器打开脚本时，在插件的支持下，代码编辑器会自动加载该解决方案，从而实现：&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;跨脚本的类型引用与智能提示&lt;/li&gt;&#10;&lt;li&gt;命名空间的自动导入&lt;/li&gt;&#10;&lt;li&gt;完整的代码补全与重构功能&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;而对于 AI 编程工具来说，由于没有相关插件的支持，仅仅是在 External Tools 中指定默认代码编辑器，并不能引起 Unity 的联动加载。这种简单指定代码编辑器的做法，更像是在 Windows 系统中指定文件的默认打开方式。&lt;/p&gt;&#10;&lt;p&gt;&lt;img src="https://www.xrstudy.net/images/posts/cursor-unity-code-completion-fix/02-external-tools-default.png" alt="Unity External Tools 设置界面"&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;img src="https://www.xrstudy.net/images/posts/cursor-unity-code-completion-fix/03-cursor-no-solution.png" alt="Cursor 中无法载入 Unity 解决方案"&gt;&lt;/p&gt;&#10;&lt;p&gt;受此影响，AI 代码编辑器不能像 Visual Studio 那样，在脚本中编写代码时获得 Unity API 的智能提示和类型识别。&lt;/p&gt;</description></item><item><title>4 种安装特定版本 Package 的方法</title><link>https://www.xrstudy.net/posts/unity-package-specific-version/</link><pubDate>Mon, 22 Dec 2025 11:50:00 +0800</pubDate><guid>https://www.xrstudy.net/posts/unity-package-specific-version/</guid><description>&lt;h2 id="引言"&gt;引言&lt;/h2&gt;&#10;&lt;p&gt;在 Unity 项目的开发生命周期中，工具版本的确定性往往比追求最新更为重要。然而，在实际的工程实践中，开发者面临的需求远比「使用最新版本」复杂得多，包括但不仅限于以下情境：&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;团队协作对齐&lt;/strong&gt;：为了确保所有成员的代码表现一致，必须严格锁定所有 Package 的版本号。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;老旧项目维护&lt;/strong&gt;：接手或复现一个两年前的项目时，新版 Package 往往会导致兼容性报错，比如 XRI 2.x 升级到 3.x 的架构断层、API 结构不兼容等。当老项目架构对旧版本 Package 开发依赖严重时，此时回退到旧版本往往是更高效的解决方案。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;特定环境复现&lt;/strong&gt;：跟随特定的技术教程学习时（如 XR Interaction Toolkit、ARFoundation 课程），必须使用与之严格匹配的工具版本，才能得到更好的沉浸式学习体验——版本差异会因为命令路径、界面布局的不一致，而导致学习进程的中断。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;对于需要在线安装管理的工具包（比如 Interaction Toolkit、ARFoundation 等），Package Manager 的默认策略通常是推荐当前可用的「最新版」。而安装指定版本的 Package 相对比较有挑战性，因为这些工具包通常不提供离线下载文件，所以我们需要掌握在 Package Manager 中安装特定版本的技巧。&lt;/p&gt;&#10;&lt;h3 id="适用范围说明"&gt;适用范围说明&lt;/h3&gt;&#10;&lt;p&gt;本文讨论的对象是通过 Package Manager 在线安装的工具包 Package（UPM），并非传统意义上的资源包（&lt;code&gt;.unitypackage&lt;/code&gt;）。后续也将会使用 Package 指代前者。&lt;/p&gt;&#10;&lt;p&gt;此外，部分第三方厂商（如 PICO、Meta 等）提供的 SDK 通常支持离线安装方式，可直接从官方渠道获取历史版本，故不在本文讨论范围内。&lt;/p&gt;&#10;&lt;h2 id="四种方法"&gt;四种方法&lt;/h2&gt;&#10;&lt;h3 id="方法零通过详情页历史版本安装"&gt;方法零：通过详情页历史版本安装&lt;/h3&gt;&#10;&lt;p&gt;在尝试复杂方法前，可先检查 Unity 原生提供的历史列表，在这里 Unity 会提供几个推荐的稳定版本。&lt;/p&gt;&#10;&lt;h4 id="操作步骤以-unity-2022-为例"&gt;操作步骤（以 Unity 2022 为例）&lt;/h4&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;在 Package Manager 中选择目标 Package。&lt;/li&gt;&#10;&lt;li&gt;在右侧详情页点击 Version History 选项卡。&lt;/li&gt;&#10;&lt;li&gt;如果目标版本在列表中，直接点击右下角的 Update to x.x.x。&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;&lt;img src="https://www.xrstudy.net/images/posts/unity-package-specific-version/01-version-history-tab.png" alt="Package Manager 的 Version History 选项卡，XRI 3.1.2 已安装，2.6.5 显示为 Recommended 并带 Update 按钮"&gt;&lt;/p&gt;</description></item><item><title>Interaction Toolkit 新版模拟器快捷键</title><link>https://www.xrstudy.net/posts/xri-simulator-hotkeys/</link><pubDate>Tue, 15 Apr 2025 17:45:00 +0800</pubDate><guid>https://www.xrstudy.net/posts/xri-simulator-hotkeys/</guid><description>&lt;h2 id="引言"&gt;引言&lt;/h2&gt;&#10;&lt;p&gt;在新版 Interaction Toolkit 中，对 XR 模拟器进行了比较大的更新，本文将介绍其中常用的快捷键。&lt;/p&gt;&#10;&lt;p&gt;&lt;img src="https://www.xrstudy.net/images/posts/xri-simulator-hotkeys/01-simulator-overview-panel.png" alt="XR Interaction Simulator 的 Input Selection 面板：左侧 Full Body 与控制器/手部模态切换，右侧是旋转与平移的方向键提示"&gt;&lt;/p&gt;&#10;&lt;h2 id="基本操作快捷键"&gt;基本操作快捷键&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Tab - 在控制器模式和 Full Body 全身控制模式之间切换&lt;/li&gt;&#10;&lt;li&gt;Y - 展开/折叠左下角的 UI 主菜单&lt;/li&gt;&#10;&lt;li&gt;X - 当切换到手柄控制器或手部时，可展开顶部二级菜单&lt;/li&gt;&#10;&lt;li&gt;R - 重置所有部件回到初始状态&lt;/li&gt;&#10;&lt;li&gt;W/A/S/D - 向前/左/后/右移动选中的部件&lt;/li&gt;&#10;&lt;li&gt;Q/E - 上下移动选中的部件&lt;/li&gt;&#10;&lt;li&gt;方向键 - 旋转所选部件&lt;/li&gt;&#10;&lt;li&gt;鼠标右键（按住）- 对当前选中的部件进行旋转&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="控制器手部模拟快捷键"&gt;控制器/手部模拟快捷键&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;左中括号 [ - 选择并控制左手手柄/左手，重复按下可在手柄和手部之间切换&lt;/li&gt;&#10;&lt;li&gt;右中括号 ] - 选择并控制右手手柄/右手，重复按下可在手柄和手部之间切换&lt;/li&gt;&#10;&lt;li&gt;Shift +（快捷键）- 对左手发出动作时的组合键，需要先按住 Shift 然后结合其他快捷键&lt;/li&gt;&#10;&lt;li&gt;T - 模拟按下 Trigger 键&lt;/li&gt;&#10;&lt;li&gt;G - 模拟抓取（Grip）&lt;/li&gt;&#10;&lt;li&gt;1/2 - 模拟手柄控制器上的右手控制器 A 键、B 键或左手控制器 X、Y 键&lt;/li&gt;&#10;&lt;li&gt;空格键 - 用于持续（保持）发出动作，按下 Space 切换 Press/Release 状态&lt;/li&gt;&#10;&lt;li&gt;`（波浪键/反引号键）- 循环切换 Space 键要控制的动作（Trigger、Grip、Primary、Secondary）&lt;/li&gt;&#10;&lt;li&gt;I/J/K/L - 用于模拟摇杆输入：I（向前/瞬移），J（向左转身），K（向后），L（向右转身）&lt;/li&gt;&#10;&lt;li&gt;M - 手部捏合动作（Pinch）&lt;/li&gt;&#10;&lt;li&gt;K - 手部抓取动作（Grab）&lt;/li&gt;&#10;&lt;li&gt;N - 手部戳点动作（Poke）&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;&lt;img src="https://www.xrstudy.net/images/posts/xri-simulator-hotkeys/02-controller-actions-panel.png" alt="Controller Actions 面板：Trigger/Grip/Primary/Secondary 四个动作的按键映射，摇杆 I/J/K/L，底部是 Space 保持动作与反引号循环切换"&gt;&lt;/p&gt;</description></item><item><title>Interaction Toolkit 跳跃功能详解</title><link>https://www.xrstudy.net/posts/xri-jump-provider/</link><pubDate>Wed, 09 Apr 2025 18:00:00 +0800</pubDate><guid>https://www.xrstudy.net/posts/xri-jump-provider/</guid><description>&lt;h2 id="本文主要内容"&gt;本文主要内容&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;介绍实现跳跃功能的 Jump Provider 组件&lt;/li&gt;&#10;&lt;li&gt;如何禁用跳跃功能&lt;/li&gt;&#10;&lt;li&gt;如何将跳跃功能绑定到其他按键上&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="跳跃功能概述"&gt;跳跃功能概述&lt;/h2&gt;&#10;&lt;p&gt;在 Interaction Toolkit 新版本中，如果使用新版本中的 XR Origin 预制体进行场景初始化，跳跃功能会默认集成在预制体中，开发者无需手动实现，程序运行时，通过点击右手手柄控制器的 A 键即可实现跳跃。&lt;/p&gt;&#10;&lt;h2 id="跳跃功能的实现结构"&gt;跳跃功能的实现结构&lt;/h2&gt;&#10;&lt;p&gt;要了解 Interaction Toolkit 中跳跃功能的实现，首先需要了解相关游戏对象的结构。&lt;/p&gt;&#10;&lt;p&gt;&lt;img src="https://www.xrstudy.net/images/posts/xri-jump-provider/01-xr-origin-locomotion-hierarchy.png" alt="XR Origin 下的 Locomotion 节点，Turn、Move、Grab Move、Teleportation、Climb、Gravity、Jump 都是它的子物体"&gt;&lt;/p&gt;&#10;&lt;p&gt;在游戏对象 XR Origin 下的 Locomotion 中，包含了一个名为 Jump 的子物体，在其上挂载了一个名为 Jump Provider 的组件，这是实现跳跃功能的主要组件。值得注意的是，跳跃功能并不仅凭 Jump Provider 实现，在 Interaction Toolkit 的移动架构中，各种移动形式不仅需要各自的 Provider，还需要一个全局管理角色 Locomotion Mediator 来管理协调不同的移动方式。&lt;/p&gt;&#10;&lt;h2 id="如何禁用跳跃功能"&gt;如何禁用跳跃功能&lt;/h2&gt;&#10;&lt;p&gt;并非所有 VR 项目都需要跳跃功能，而默认情况下跳跃功能占用了右手控制器的 A 键。如果项目不需要跳跃或者需要在 A 键上实现其他功能，此时在 Hierarchy 窗口中将 Jump 子物体隐藏即可禁用跳跃功能。&lt;/p&gt;&#10;&lt;p&gt;&lt;img src="https://www.xrstudy.net/images/posts/xri-jump-provider/02-jump-gameobject.png" alt="Hierarchy 中的 Jump 子物体，Inspector 里可以看到它挂的是 Jump Provider 组件"&gt;&lt;/p&gt;</description></item><item><title>Interaction Toolkit 空间键盘（Spatial Keyboard）功能的实现</title><link>https://www.xrstudy.net/posts/xri-spatial-keyboard/</link><pubDate>Sun, 23 Mar 2025 17:04:00 +0800</pubDate><guid>https://www.xrstudy.net/posts/xri-spatial-keyboard/</guid><description>&lt;p&gt;在 VR 应用开发中，文本输入是一个常见需求，而 Unity 的 Interaction Toolkit 提供了空间键盘功能，使开发者能够快速实现这一功能。本文将详细介绍如何在 Unity XR 项目中实现两种形态的空间键盘：全局空间键盘和世界空间键盘。&lt;/p&gt;&#10;&lt;h2 id="准备工作"&gt;准备工作&lt;/h2&gt;&#10;&lt;p&gt;在开始实现空间键盘功能前，需要先导入相关资源包并解决依赖问题。&lt;/p&gt;&#10;&lt;h3 id="导入-spatial-keyboard-资源包"&gt;导入 Spatial Keyboard 资源包&lt;/h3&gt;&#10;&lt;p&gt;首先确保已安装 Unity XR Interaction Toolkit，然后进行以下操作：&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;打开 Package Manager&lt;/li&gt;&#10;&lt;li&gt;找到 Interaction Toolkit&lt;/li&gt;&#10;&lt;li&gt;在 Samples 标签页下找到 Spatial Keyboard&lt;/li&gt;&#10;&lt;li&gt;点击 Import 导入资源包&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;&lt;img src="https://www.xrstudy.net/images/posts/xri-spatial-keyboard/01-spatial-keyboard-sample-import.png" alt="Package Manager 的 Samples 列表选中 XR Interaction Toolkit，右侧找到 Spatial Keyboard 示例并点击 Import"&gt;&lt;/p&gt;&#10;&lt;p&gt;导入过程中会提示对 TextMesh Pro 的依赖，这是因为键盘上的文字是通过 TextMesh Pro 呈现的。&lt;/p&gt;&#10;&lt;h3 id="解决版本依赖问题"&gt;解决版本依赖问题&lt;/h3&gt;&#10;&lt;p&gt;初次导入后可能会遇到版本依赖问题。如果运行应用程序时出现与 &lt;code&gt;KeyboardOptimizer.cs&lt;/code&gt; 相关的报错，如下图所示：&lt;/p&gt;&#10;&lt;p&gt;&lt;img src="https://www.xrstudy.net/images/posts/xri-spatial-keyboard/02-keyboardoptimizer-error.png" alt="Console 中的编译错误：KeyboardOptimizer.cs(284,20) error CS0246"&gt;&lt;/p&gt;&#10;&lt;p&gt;此时需要升级 TextMesh Pro 插件：&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;打开 Package Manager&lt;/li&gt;&#10;&lt;li&gt;切换到 Unity Registry&lt;/li&gt;&#10;&lt;li&gt;找到 TextMesh Pro&lt;/li&gt;&#10;&lt;li&gt;点击 Update 升级到较新版本（如从 3.0.7 升级到 3.0.9）&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;&lt;img src="https://www.xrstudy.net/images/posts/xri-spatial-keyboard/03-textmeshpro-update.png" alt="Package Manager 中 TextMesh Pro 的详情页，右上角是 Update to 3.0.9 按钮"&gt;&lt;/p&gt;</description></item><item><title>关于我</title><link>https://www.xrstudy.net/posts/about/</link><pubDate>Wed, 31 Jul 2024 18:20:24 +0800</pubDate><guid>https://www.xrstudy.net/posts/about/</guid><description>&lt;p&gt;邵伟，Unity价值专家（UVP），公众号/B站「XR技术研习社」频道主理人。两届高通 Qualcomm XR 创新应用挑战赛的评委和技术导师，智联人才专家库成员，曾任蛮牛教育和极客时间特聘讲师，先后出版VR开发技术书籍包括：《虚拟现实原理与开发：基于Unity的VR技术实现》、《Unity VR虚拟现实完全自学教程》、《Unity 2017虚拟现实开发标准教程》。录制视频课程超6000分钟，线上线下培训学员超3000人次，目前专注于XR技术教育培训工作。&lt;/p&gt;&#10;&lt;div class="cert-pair"&gt;&#10; &lt;img src="https://www.xrstudy.net/images/about/uvp-certificate.jpg" alt="Unity 价值专家（UVP）证书"&gt;&#10; &lt;img src="https://www.xrstudy.net/images/about/UnityCert.jpg" alt="Unity 中文课堂优秀讲师证书"&gt;&#10;&lt;/div&gt;&#10;&lt;h2 id="在线课程"&gt;在线课程&lt;/h2&gt;&#10;&lt;p&gt;&lt;img src="https://www.xrstudy.net/images/about/online-courses.png" alt="在线课程"&gt;&lt;/p&gt;&#10;&lt;h2 id="出版作品"&gt;出版作品&lt;/h2&gt;&#10;&lt;p&gt;&lt;img src="https://www.xrstudy.net/images/about/publications.png" alt="出版作品"&gt;&lt;/p&gt;&#10;&lt;h2 id="线下服务"&gt;线下服务&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;院校技术培训&lt;/li&gt;&#10;&lt;li&gt;企业团队内训&lt;/li&gt;&#10;&lt;li&gt;技术咨询&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="合作单位"&gt;合作单位&lt;/h2&gt;&#10;&lt;div class="logo-grid"&gt;&#10; &lt;img src="https://www.xrstudy.net/images/about/sjtu-logo.png" alt="上海交通大学" class="logo-wide"&gt;&#10; &lt;img src="https://www.xrstudy.net/images/about/icbc.svg" alt="中国工商银行" class="logo-wide logo-icbc"&gt;&#10;&lt;/div&gt;&#10;&lt;h2 id="合作联系"&gt;合作联系&lt;/h2&gt;&#10;&lt;p&gt;请发邮件至：sovida@foxmail.com，请勿在后台留言（公众号仅保存5天内容）。&lt;/p&gt;</description></item></channel></rss>