网格工具包发行说明

就本文档而言,有两类用户:

  • 创建者:使用网格工具包构建的技术艺术家和开发人员
  • IT 管理员:在 Azure 或 M365 中工作的经理

版本列表和日期

重要

已弃用早于 5.2406 的网格工具包版本。 建议升级到最新版本的网格工具包。

网格工具包 5.2414.X

新增功能

  • 此版本包含次要修复和改进。

网格工具包 5.2413.X

新增功能

网格工具包上传程序

  • 在更改使用较新版本创建的资产之前,较旧的上传程序版本会发出警告。 虽然网格运行时与旧版资产向后兼容,但我们无法保证与后来从较新版本降级的资产兼容。 如果以某种方式降级资产是不可避免的,请在在事件中使用之前彻底测试资产。

  • 2024 年 5 月发布的早于 5.2406 () 的网格工具包版本将从 10 月 1 日起弃用。 (注意:对于已在 24.6 之前的受影响工具包版本上发布的环境,无需执行任何作,现有上传将继续像现在一样正常运行。)

可视化脚本

  • 用户可以使用项目设置网格工具包设置>扩展>视觉对象脚本>下的新设置来控制视觉对象脚本错误是否阻止上传。

  • 例如,如果视觉脚本变量意外设置为与其声明的类型不兼容的值 (,例如,如果使用“在数学/标量) 中添加 (”作为输入来设置整数类型变量) ,则内容验证现在将其标记为正确性问题。 这会显示在“网格可视化脚本诊断”面板、CPA (内容性能分析器) 和上传之前。

  • 视觉对象脚本现在可以访问文本网格 Pro - 文本 (UI) 的属性和方法。 新脚本节点的名称以脚本节点选择器中的文本网格 Pro UGUI 开头。

网格工具包 5.2412.X

新增功能

网格工具包上传程序

  • 修复了导致上传失败且重试时 FileNotFoundException 失败的 bug。

  • 围绕图形作扩展重试,希望能够解决临时问题。

  • 删除了在网格工具包设置中选择Unity生成管道的选项。

  • 修复导致验证在重试时失败的问题,即使场景已修复并似乎已保存也是如此。

  • 默认字体设置命令现在将消息输出到控制台。

可交互对象

可交互组件 (“网格可交互设置”) 已更新为以下内容:

  • UI 重新设计,外观更简洁,组织和可用性更佳。

  • “可交互对象”现在是四种可交互类型的总称: BasicManipulableEquippableThrowable

  • 在“装备”类型中,有 10 个用于手部定位的预设,还可以创建自己的自定义预设。

  • 组件现在具有上下文相关帮助按钮。

网格工具包 5.2411.X

新增功能

网格工具包上传程序

  • 更新了“生成目标”选项,其中包含有关目标支持的平台的详细信息。 还添加了一个常规警告,在上传选择了一部分目标的环境时。

网格工具包 5.2410.X

新增功能

网格工具包上传程序

  • 如果上传程序工具和网格服务在上传过程中出现问题,我们现在向用户显示一条消息,指出作花费的时间比预期要长,但仍在运行。

  • 修复了以下 bug:Unity包管理器无法获取信息,并且主机在重复时被同一消息发送垃圾邮件。

用于在网格事件中显示 URl 的 WebSlate 可控制对象

随着 24.10 网格工具包的发布,开发人员现在可以向环境添加 WebSlate 可控制组件。 这些 WebSlates 使事件与会者能够在网格事件中通过 WebSlates 与网页交互,并使活动组织者能够实时动态更改 WebSlates 上显示的内容。

事件主机可以显示Microsoft Whiteboard,例如:

包含 WebSlate 的网格事件的屏幕截图,其中显示了Microsoft Whiteboard,其中两个虚拟形象与之交互。

  • 开发人员更新: 用于添加 Web 的相同简单工作流,以及用于添加可控制功能的次要附加配置。

  • 活动组织者体验: 切换 URL、可见性 (打开/关闭) ,并选择性地阻止挂起 (以使 WebSlates 始终处于) 。 通过控制面板,在运行时更改 URL 会为事件中的所有用户更新 WebSlates,立即 (全局刷新) 。

  • 最终用户体验: 光标/控制器悬停时,已添加带有内置刷新按钮的菜单栏和工具提示,简要说明 Web 单用户性质, (某些 Web 应用可能会) 提供共享体验。 这提供了一种返回到组织者设置的 URL 的方法, (如果用户导航离开) ,并且可用于 Web 应用在体验期间出现问题的情况。

需要考虑的一些值得注意的细节包括:

  • 开发人员可以选择是否可以在事件发生时更改 URL,方法是删除父 WebSlateFramed GameObject 中的 WebSlate 可控制脚本。

  • 开发人员选择 WebSlate 在环境中的位置。 目前,WebSlate 定位在上传到环境后不可调整, (这不是目录)

  • WebSlate 的内容和交互将取决于其上显示的 Web 应用。 例如,某些 Web 应用将为所有用户提供同步输入,从而产生共享交互的感觉,但导航和滚动不会跨用户同步。 选择 WebSlate 中显示的 URL 并对其进行测试对于获得所需体验非常重要。

  • 目前,网格中的任何 Web 应用都不支持 SSO。 但是,在适用于 Windows 的网格 (而不是 Quest) 上,登录某些应用确实可以通过手动身份验证进行。 在 WebSlate 中,Microsoft帐户管理员将允许使用用户计算机上存在的凭据登录,以便轻松安全地访问内容。 注意:尽管这解锁了使用 fluid Framework 应用(如 Microsoft Whiteboard 和 Loop)的功能,但只有输入跨用户同步,而不是导航或滚动。

24.10 工具包升级说明:

对于Unity场景中具有 WebSlateFramed 组件的现有环境,将网格工具包升级到 24.10 将在上传时自动为组织者提供 WebSlate 可控制的功能。 这意味着组织者将能够通过控制面板在运行时切换其 WebSlate 的 URL,并且最终用户将在将鼠标悬停在石板时看到刷新按钮/信息硬币。 建议仔细检查环境中的 WebSlate 定位,以确保在运行时悬停时出现的面向用户的菜单栏 (位于中间) 板下方,) 不会与环境的任何其他部分相撞。

对于那些不希望 URL 由组织者控制的用户,可以通过从其 WebSlate GameObject 中删除“WebSlate 可控制”脚本来关闭 WebSlate 可控制。

可视化脚本

  • 改进了和扩展了“网格可视化脚本诊断”面板中显示的诊断, (位于“检查器”面板底部) ,并通过将鼠标悬停在“诊断”面板中的任何条目来添加可在工具提示中查看的扩展说明,使其更具可作性。

  • 某些新诊断 (例如,“未声明变量”和“无法修改预制件定义”) 阻止环境的上传,直到它们得到修复。 已上传的环境不受影响。

  • 添加了 On Dictionary Item AddedOn Dictionary Item Removed 事件,这些事件允许视觉脚本有效地响应向字典类型组件属性和可视脚本变量添加或从中删除的项。

    网格工具包的屏幕截图,其中显示了“已添加或删除字典”项。

  • 模拟器中的客户端启动时间已显著缩短,适用于大型场景 (具有数千个视觉脚本和数万个场景对象) 。 (60475)

已解决的问题

  • 对于网格物理,我们删除了启动时禁用刚体以下呈现器组件的问题和不必要的机制,并在完全连接时重新启用它们。 (59804)

  • 对于可视化脚本,我们修复了在保存在 Unity 编辑器 中时导致嵌入子图损坏的问题。 此问题不会影响保存在单独资产文件中的 (子图。) (60183)

  • 对于可视化脚本,将损坏的嵌入子图加载到 Unity 编辑器会导致这些警告记录到 编辑器 控制台:Failed to add element to graph during deserialization: [...]。 (60183)

  • 对于可视化脚本,当通过在“项目”面板中选择 prefab 资产来编辑预制件定义中的视觉脚本时, (而不是在场景上下文中打开 prefab 定义,或者与“层次结构”面板) 隔离打开 prefab 定义时,网格可视化脚本诊断面板可能会显示误报诊断错误:

    • Cannot modify prefab definition

    • Invalid reference

      但是,如果在场景上下文中编辑的预制件定义中编辑视觉对象脚本或从“层次结构”面板单独打开,则这些错误确实指向实际内容问题。 (60475)

网格工具包 5.2409.X

新增功能

Mesh 工具包上载程序

  • Unity升级:24.9 工具包需要使用Unity 编辑器版本 2022.3.34f1。 这是一次次要升级,因此已发布的内容将继续工作。

  • 在环境上传过程结束时显示的“ 生成和上传结果” 窗口显示预处理器和验证程序的状态。 若要再次查看这些结果,请在菜单栏上的Unity中,选择“网格工具包>验证>验证活动场景”。

  • 在网格上传器中,每个环境都有一个更新的平台支持显示。 当前所选平台的图标以白色显示;未选择的平台显示为红色,并在滚动时显示工具提示警告。

  • 将警告以前上传的平台(不在当前选定内容中)的弹出窗口替换为 UI 文本中的警告。

可视化脚本

  • 视觉对象脚本现在有权访问 物理 | 提供命中信息输出的光线投射节点。 可以使用 Raycast Hit | ... 属性访问器节点检查通过此端口返回的值。

已解决的问题

  • 使用刚体 |设置位置和刚体 |设置“旋转”现在按预期工作,并且不再导致受影响的物理实体重新定位到视觉脚本最近将它们置于后期联接的位置。

  • 刚体 |获取/设置位置和刚体 |获取/设置旋转节点以及转换 |获取/设置位置和转换 |在转换层次结构中不存在或存在本地物理范围组件时,物理主体的获取/设置位置节点现在正确批注为“所有客户端共享”或“此客户端本地”。

  • 转换 |当 应用于物理体时,“设置本地规模”现在可跨客户端正确同步。

  • 修复了网格模拟器分屏模式下视觉脚本中的光线投射始终针对第一个客户端的物理碰撞体而不是其自己的客户端的问题。 仅当不同客户端的碰撞体几何图形不同时,此问题才明显,除非显式执行,否则通常不是这种情况。

Mesh Toolkit 5.2408.X

新增功能

内容性能分析器 (CPA)

  • CPA 工具现在包含一个新的分析器,用于检查遮挡剔除数据。 如果场景中存在没有遮挡数据的静态对象,这将阻止上传,直到解析为止。

  • CPA 工具现在包含用于 AVP 模拟的 AVP 质量选项。

Mesh 工具包上载程序

  • 修复了当文件不在磁盘上时导致缩略图生成期间上传失败的 bug。

  • 修复了使用 TMP 文本保存场景导致网格工具包包重新导入的 bug。

  • 修复了允许用户仍使用已弃用的工具包版本的 bug。

  • 设置标题从“网格上传程序设置”更改为“网格工具包设置”

网格工具包 5.2407.X

新增功能

  • 现在,可以在禁用域重载的情况下进入网格模拟的播放模式。 这应显著加快网格模拟器的启动和停止时间,从而加快迭代速度。

  • 修复了使用 TMP 文本保存场景导致网格工具包包重新导入的 bug。

  • 同一集合中不再允许重复的环境名称。

  • 添加菜单“网格工具包/配置/将网格字体应用于开放场景”,该菜单将更新打开场景 TextMesh pro 组件上的字体,以使用默认网格字体。

网格工具包 5.2406.X

新增功能

可视化脚本

  • 修复了模拟器中在某些情况下记录到Unity控制台的“无法反序列化可编写脚本的对象”错误。

  • 修复了以下问题:视觉对象脚本应用的共享属性 (或变量) 更新有时可能会丢失,因为以前更新同一属性 (或变量) 在不合时宜的时间从其往返服务器返回。

  • 修复了可视化脚本使用脚本变量传递 TransformGameObject 引用脚本图时,在非常大的场景中后期加入的仅仿真器问题。 发生此问题时,警告级消息将具有以下措辞记录到控制台:“OnMessageReceived:收到的消息具有正确的类 ID 1,但数据包中的数据大小预期总计...数据包为 1988,索引为 ...看起来不正确。”

Mesh 工具包上载程序

  • Mesh 工具包上载程序将检查安装 IL2CPP 模块,以允许构建 Windows 独立 (电脑) 平台。

  • 修复了某些使用默认网格字体的场景会导致工具包错误地生成字体的 bug。

  • 根据需要,在配置默认字体时,通过自动导入 TMP 概要来改进网格工具包默认字体配置。

  • 修复未找到有效集合时显示的额外错误。

  • 添加一条消息,以在环境未上传先前的平台时填充空白空间。

Mesh Toolkit 5.2405.X

新增功能

Mesh 工具包上载程序

  • 云脚本可能会报告 场景地图 已过期,因为场景尚未保存。 由于上传需要保存场景,因此将其报告为问题没有意义。 我们已将保存场景的选项移动到上传程序执行的步骤的开头,以便保存场景或取消作。

  • 修复了尝试重命名资产副本但先前副本已存在的 bug。 它还减少了生成失败后磁盘中剩余的副本数。

  • 修复了一个 bug:某些使用默认网格字体的场景导致工具包在控制台中发出不必要的错误。

云脚本编写

云脚本现在仅为云脚本游戏对象范围内的Unity场景中使用的动画师生成类。 未使用或仅用于场景其他部分的动画处理器将不再生成类。

如果云脚本包含对这些类的引用,则会遇到如下所示的编译错误:

error CS0246: The type or namespace name 'MyUnusedAnimator' could not be found (are you missing a using directive or an assembly reference?)  
To resolve, ensure that the animator in question is used within the cloud scripting portion of the scene, or remove the reference from your cloud scripts.

请注意,此更改仅影响使用此版本的网格工具包或更高版本生成的云脚本。 现有网格环境部署不受影响。

可视化脚本

  • 如果环境包含的 ScriptMachine 具有中断 (“Missing”) 或未分配 (“None”) 资产图引用,则视觉对象脚本不再完全禁用。

  • 新的“显示输入对话框”视觉对象脚本节点可用于弹出提示用户输入文本的对话框。 用户输入的文本 (以及他们按下关闭对话框的按钮) 存储在可视脚本变量中。

    网格工具包中“显示输入对话框”可视脚本节点的屏幕截图。

  • 修复了字符串 |创建节点,该节点以前仅在模拟器中工作,但在独立生成中无法工作。

  • 脚本图 UI 中 (模糊查找器) 的脚本节点选择器不再包含通过无法直接访问的类型访问继承属性或方法的节点。

  • 修复了以下网格可交互正文脚本节点的可视化脚本图 UI 中显示的共享标记,以正确显示“由所有客户端共享” (,而不是错误地将此客户端本地) :网格可交互正文 |是否激活网格可交互主体 |在网格可交互主体处装备 |配备网格可交互主体 |获取设备时间

    这些可视脚本节点的功能保持不变。 如果需要这些属性的本地版本,可以将它们与网格可交互正文 | 组合在一起是 Mine 属性。

  • 尝试在“由所有客户端共享”的组件中 Variables 设置未声明的脚本变量不再会导致大量控制台错误。 相反,将忽略设置无效变量的尝试。

  • 现在 ,即使未触发 On State Changed 事件本身,也可以读取 “状态更改 ”事件本身的输出。

    这样,从 On State Changed 事件以及启动事件(例如,引导到同一脚本流的 On Start 事件 )执行相同的脚本流变得更容易,以便基于启动时的初始状态一致地建立一些场景状态。

    以前,任何从其自己的脚本流外部读取 On State Changed 输出的尝试都会导致记录错误 (“值...无法动态提取,必须为其分配“) ,并中止有问题的脚本流。

  • 现在,在模拟器控制台中会显示运行时的脚本错误,诊断更有用:

    控制台错误现在包括 的名称 ScriptMachine ,并标识触发违规脚本流的事件节点。

    单击模拟器控制台中的错误消息会突出显示转换层次结构中的违规。ScriptMachine

Playmode

  • 进入 Playmode 时的新场景验证:在 5.2405 之前,仅当尝试将场景上传到网格时才会验证场景。 现在,当用户尝试进入 Playmode 时,将进行场景验证。

    如果用户在验证场景之前尝试进入 Playmode,会出现新的错误消息:

    启动 playmode 时场景验证错误对话框的屏幕截图。

    还有一个新的菜单项用于 验证活动场景

    网格工具包中“验证活动场景”菜单项的屏幕截图。

网格工具包 5.2404.X (预览版)

警告

这是在版本号末尾由 -preview 标记指出的网格工具包的预览版。 使用此预览版网格工具包发布的环境仅适用于网格预览版, 并且与稳定的公共版本的 Mesh 不兼容。 在发布稳定公共版本之前,不要升级到此版本的网格工具包;稳定公共版本在版本号的末尾没有 -preview 标记。

请注意,不要覆盖公司当前使用预览版的环境。

新增功能

  • 向网格工具包添加屏幕共享支持,允许开发人员在其环境上放置屏幕共享组件,这些组件稍后将允许用户在网格中共享屏幕。

    若要添加屏幕共享组件,可以:

    1. 打开 场景层次结构>网格工具包>屏幕共享上的上下文菜单。
    2. 在网格工具包包上搜索屏幕共享预制件,并将其拖放到场景中。

    添加的预制件包含一个可编辑的根和一个模拟 UI,它们不会上传以帮助开发人员放置和设计其环境。 在网格上上传和加入事件时,不会反映修改 [NoUpload] 下提供的模拟 UI。 添加的预制件可以根据需要调整大小并放置在场景中。

    如果在场景中添加多个屏幕共享组件,则当用户在网格上启动屏幕共享时,所有这些组件都将显示同一屏幕。

Mesh 工具包上载程序

  • 现在,场景验证将在进入游戏模式时进行,而不是仅在上传场景之前进行。

  • 在继续上传之前,需要保存具有未保存更改的任何场景。 这是为了防止在作过程中丢失这些更改,以及场景状态之间的差异可能发生的一些 bug。

  • 修复以防止在获取有关上传的资产的信息时出现 FileNotException 错误。

  • Fug 修复可防止在生成期间意外重命名资产副本,这可能会导致作失败。

  • 修复以在添加时重置缩略图相机(如果已存在),而不是引发错误。

  • 禁用“生成”& Playmode 处于活动状态时发布,因为它会导致生成失败。

  • 修复上载到图形失败时可能令人困惑的错误消息。 在生成后作期间显示进度栏。

  • 如果生成已失败,上传程序现在将跳过缩略图生成。

网格工具包 5.2403.X

新增功能

网格工具包上传程序

  • 网格工具包现在需要使用 Unity 版本 2022.3.15f1。 这是从上一版本 (2022.3.7f1) 的次要升级,因此项目应该升级没有问题。

  • 如果在创建作期间出现验证错误,用户将不再看到消息对话框。 失败将显示在结果对话框中,日志中会显示更多详细信息。

  • 修复了登录后打开 ocv 导致 unity 崩溃的 bug。

  • 处理未能将网格工具包配置保存到磁盘时出现的错误。

  • 改进了结果对话框中网格上传程序扩展的状态报告。

网格模拟器

  • 修复了模拟器上的 bug,当第一个玩家离开时,所有场景都会变暗。

网格工具包 5.2402.X

新增功能

网格工具包上传程序

  • ContentVersion 已递增为 1.25.0:新发布的内容将仅在最近的 MeshBrowsers 中可见。

  • 改进了在创建环境期间对故障的处理和报告。

  • 如果找不到用户的任何集合,请添加提示以打开网格门户。

  • 改进了取消对话框以选择新的缩略图文件夹时的消息。

Mesh 201 教程

  • 网格 201 已针对网格工具包版本 5.2402.0 发布, (预览版) 。 在本教程中,你将基于这些知识,了解如何使用 WebSlates 在体验中显示 Web 内容。 本教程包括交互式地球;当你体验中的某个用户单击地球时,将捕获单击位置的纬度和经度,并将这些坐标合并到必应地图 URL 中作为参数。 使用此 URL 执行 HTTP 请求;必应地图提供所选区域的地图,并将其发送到附近的 WebSlate。

可视化脚本

  • 网格注入的节点在运行时在模拟器中不再不可见,并且不再使用重复的“null 纹理”警告填充控制台。 (44056)

  • 如果环境包含的 ScriptMachine 具有中断 (“Missing”) 或未分配 (“None”) 资产图引用,则视觉对象脚本不再完全禁用。 (36795)

  • 修复了字符串 |创建节点,该节点以前仅在模拟器中工作,但在独立生成中无法工作。 (37040)

  • 脚本图 UI 中 (模糊查找器) 的脚本节点选择器不再包含通过无法直接访问的类型访问继承属性或方法的节点。 (37824)

  • 修复了以下网格可交互正文脚本节点的可视化脚本图 UI 中显示的共享标记,以正确显示“由所有客户端共享” (而不是错误地将此客户端本地) :

    • 网格可交互主体 |是否激活
    • 网格可交互主体 |装备在
    • 网格可交互主体 |已配备
    • 网格可交互主体 |获取设备时间

    这些可视脚本节点的功能保持不变。 如果需要这些属性的本地版本,可以将它们与网格可交互正文 | 组合在一起是 Mine 属性。 (38589)

  • 修复了网格模拟器中的脚本统计信息面板,如果尚未在本地计算机上为该Unity项目打开可视化脚本图 UI,则不会显示任何内容。 (40526)

  • 修复了网格可视化脚本诊断面板未显示任何内容(如果尚未在本地计算机上为该Unity项目打开可视化脚本图 UI)。 (40527)

  • 修复了在间隔过后偶尔触发两次短序列的 On Interval 节点。 (40894)

  • 现在向视觉对象脚本公开了几个有用的“呈现设置”属性:

    • 对于环境照明源设置为 Skybox 的环境:

      • 呈现设置 |获取 Skybox - 请参阅Unity文档
      • 呈现设置 |获取/设置环境强度 - 请参阅Unity文档
    • 请注意,若要查看天空盒材料更新对动态照明的影响,请包括 Dynamic GI |修改 skybox 材料后更新环境脚本节点。

    • 对于环境照明源设置为“颜色”的环境:

      • 呈现设置 |获取/设置环境光 – 请参阅Unity文档
    • 对于环境照明源设置为“渐变”的环境:

      • 呈现设置 |获取/设置环境天空颜色 - 请参阅Unity文档
      • 呈现设置 |获取/设置环境赤道颜色 - 请参阅Unity文档
      • 呈现设置 |获取/设置环境地面颜色 - 请参阅Unity文档
  • 多个行呈现器组件方法和属性现在向可视化脚本公开:

    • 方法:

    • 属性:

      • 线条呈现器 |获取/设置位置计数 - 请参阅Unity文档
  • 现在,许多有用的视频播放器组件方法和属性都向可视化脚本公开。

    • 方法:

    • 属性 - 可以使用 On State Changed 事件节点来观察这些属性:

      • 视频播放器 |已准备好 - 请参阅Unity文档
      • 视频播放器 |正在播放 - 请参阅Unity文档
      • 视频播放器 |是否暂停 - 请参阅Unity文档
      • 视频播放器 |Is/Set 循环 - 请参阅Unity文档
      • 视频播放器 |获取/设置时间 - 请参阅Unity文档
      • 视频播放器 |获取/设置播放速度 - 请参阅Unity文档
      • 视频播放器 |获取长度 - 请参阅Unity文档
      • 视频播放器 |可以设置时间 - 请参阅Unity文档
      • 视频播放器 |可以设置播放速度 - 请参阅Unity文档

网格上传程序

  • ContentVersion 已递增到 1.25.0;新发布的内容仅在最近的 MeshBrowsers 中可见。

  • 改进了在创建环境期间对故障的处理和报告。

  • 如果找不到用户的任何集合,请添加提示以打开网格门户。

  • 改进了取消对话框以选择新的缩略图文件夹时的消息。

网格工具包 5.2401.0 (预览版)

新增功能

工具包

  • ContentVersion 递增为 1.24.0:新发布的内容将仅在最近的网格应用中可见。

  • 来自网格服务的某些错误中没有足够的信息。 例如,某些错误仅报告为“BadRequest”或“BadGateway”。 我们改进了来自服务的错误消息,以包含更多有用的详细信息。

  • 通过将“选项”选项卡中的“设置”移到“项目设置”/“网格上传程序设置”窗格以及其他上传程序设置,简化了选项发现。

  • 改进了缩略图生成失败时的错误处理。

  • 改进了对资产验证的错误处理。

  • 如果无法创建资产的副本,则不会继续执行生成和发布作。

  • 修复了当窗口打开时更改“ 需要地面冲突层 ”时没有正确值的问题。

诊断和调试工具现在更易于在网格模拟器中发现和使用:
  • 在Unity编辑器中,单击“输入拆分屏幕”按钮以启用拆分屏幕模式,这样就可以测试和调试多用户问题。

  • 在拆分屏幕模式下,单击“ 添加 ”或“ 离开 ”,将更多分屏客户端添加到会话或使其退出会话。

  • 选择 “脚本统计信息 ”以显示实时可视化脚本性能统计信息面板,例如:

    • 哪些可视化脚本流需要最多每帧执行时间

    • 哪些共享属性和变量最常 (更新并通过网络) 复制

    单击某个条目将直接转到 “层次结构 ”面板中的相应场景对象。

  • 选择“ 性能统计信息 ”以仅以单屏模式 (向 Visual Profiler 显示,) 显示正在运行的场景的实时 CPU 和 GPU 性能统计信息。

脚本和物理

  • 现在可以使用 On State Changed 视觉脚本事件来观察物理主体的转换。 每当物理正文直接在本地客户端上移动或由远程客户端移动时,事件将触发。 (31869)

  • 在环境上传期间,视觉脚本验证步骤检测到的问题现在记录了显著改进诊断以及如何避免报告的问题的扩展指南。 (34450)

版本 5.2315.0

版本列表和日期

这些是当前可用的产品和包。 此处看到的列表和你拥有或看到的包可能略有不同。

注意

环境项目的网格工具包包的版本号 必须 等于或早于你的环境所面向 (电脑或任务) 网格应用,否则环境将不会加载。 通常,可以使用非预览版网格工具包包来确保这一点,该包仅在匹配的网格应用在商店中可用后发布。

网格产品/包 版本 发布日期
网格工具包包 5.2315.0 2023-2-2
网格 (PC/Quest) 5.2315.0 2023-2-2

新增功能

工具包

  • ContentVersion 递增为 1.22.0。 新发布的内容仅在最新版本的网格应用中可见。

  • 添加了新的预生成验证,该验证仅允许特定层上的 GameObject。

  • 已将“ 创建资产 ”按钮重命名为 “创建环境”。

  • 修复了在生成阶段存在无效资产时结果报告中的生成状态。

  • 如果诊断数据级别不是由租户管理员设置的,则默认情况下上传程序将发送可选诊断。

  • 已将菜单项从 网格工具包/配置/默认字体 重命名为 网格工具包/配置/应用默认字体设置

  • 已将菜单项从 网格工具包/配置/项目设置 重命名为 网格工具包/配置/应用项目设置

  • 在“网格上传程序 更新环境 ”选项卡中,单击 “缩略图” 下拉列表并选择“ 从文件夹中获取”时,将显示一个按钮,标签曾显示 “添加临时缩略图 ”,但现在显示 “添加指导缩略图”。

  • 现在,当用户在项目外部选取文件夹时,会显示一个错误对话框。

  • 修复了上传程序扩展系统中的 bug:

    • 元数据阶段意外运行多次。

    • 在某些情况下,会忽略元数据结果。

  • 现在,在没有活动场景的情况下,生成后,我们返回到空的默认场景。

  • 现在,我们避免显示无法在网格中验证的集合。

  • 现在,在上传程序窗口中显示工具包包版本。

  • 上传程序生成平台现在按项目设置而不是按计算机设置存储。

  • 改进了上传程序处理正在取消的作的方式。

  • 更改窗口焦点时防止刷新资产列表。

  • 在使用工具包的预览版本时添加了更新的标题和警告。

  • 在作期间Unity重新加载程序集时,我们清除了令人困惑的进度栏。

  • 现在,在重试作时,如果身份验证已过期,则提示用户重新进行身份验证。

  • 有时上传程序在对用户进行身份验证时会遇到 UserInteractionNeeded 异常。 现在,通过将用户委派给基于 Web 浏览器的身份验证来缓解此问题。

  • 对层的中断性变更:我们重命名了多个层,将当前未使用的层移动到保留层,并更新了跨层交互。 请参阅 配置头像移动和传送

  • 将设置从 RequireNavMeshLayer 移到 RequireGroundCollisionLayer

  • 修复了成功发布的结果对话框中的失败消息。

脚本编写

  • NavMesh 层现在称为 GroundCollision 层。 有关使用 GroundCollision 层的详细信息,请参阅 配置虚拟形象移动和传送

  • 在动态目标上设置的共享属性和脚本变量(例如,目标组件实例从脚本变量读取或在脚本运行时以其他方式推断)现在可可靠地处理整个场景中的所有可行目标。 (32730)

    以前,当在脚本运行时动态推断目标时,只有整个场景中的一部分可行目标实例能够可靠地工作。 这不包括放置在转换树的同级分支中的目标实例。

    • 隐式 This 场景对象上的任何内容

    • 其下的任何内容

    • 其任何父级上的任何内容

    场景 This 对象是执行视觉脚本所附加到的 ScriptMachine GameObject。

    例如,如果尝试设置类型组件的共享属性 Foo,并且使用变量动态引用特定 Foo 实例以启用该属性,则对于以下 Foo 实例而言,这只会可靠地适用于任何实例:

    • This附加到 = 与运行视觉对象相同的 GameObject ScriptMachine

    • 已附加到转换层次结构中的任何父级/上级 GameObject This

    • 已附加到转换层次结构中 This 的任何子/后代 GameObject

  • 在子图中使用计时器节点不再会导致记录与 相关的 OptimizedTimerUnitUpdateScheduler 重复错误消息。 (31866)

  • 可视化脚本图 UI 现在包含网格和Unity可视化脚本节点上的使用说明和有用提示。 (25922)

  • 不再需要将 添加到 Microsoft.Mesh.VisualScripting.xml 版本控制。 如果以前已将其部署到 Unity 项目中,则可以安全地将其删除并从版本控制中删除。 (25922)

  • 在本地 脚本范围 组件中,当将此组件的新实例添加到场景中时,“ 在此 GameObject 上共享可视脚本变量 ”设置现在默认为关闭。 现有实例不受影响。 (26551)

  • 网格在运行时注入的特殊脚本节点显著改进了视觉对象和处理,现在 (30925) :

    • 已减少注入节点的视觉占用空间,以消除视觉混乱,并使脚本流在执行时更易于跟踪。 它们现在牢牢地附加到邻近的用户定义节点之一。

    • 注入的节点的新视觉对象:

      新视觉对象 注入的节点
      分析视觉对象的图像 分析 (流开始)
      数据筛选视觉对象的图像 数据筛选
      状态跟踪视觉对象的图像 状态跟踪
    • 当数据筛选节点阻止数据并改为传递某个 Null 值时,其图标将更改,其工具提示会显示有关最近阻止的数据的诊断信息:

      阻止数据的数据筛选器节点的图像,其中显示了有关最近阻止的数据的诊断信息

      • 在仿真器运行时编辑脚本图时,注入的节点现在会自动注入并根据需要删除。
  • 某些对象引用中保存了脚本图,其中包含冗余类型和版本控制信息。 这不会明显影响用户体验。 不再包含此冗余信息。 (30688)

  • 如果转换层次结构中选择了多个组件,“网格可视化脚本诊断”面板现在可正确显示所有选定ScriptMachine组件的诊断。 以前,仅显示第一个所选 ScriptMachine 的诊断。 如果同时选择了多个,则会将错误记录到控制台面板。 (30873)

  • 访问 Travel Point 方法和属性现在适用于所有情况。 以前,当 Travel Point 是隔离设置的,而不是嵌套在显式 Travel Point 组中,并且对它的引用从另一个脚本节点传递到方法或属性节点时, (例如,从 Get Variable 节点) , 旅行点 引用在运行时被错误筛选掉,并且方法调用或属性访问将不起作用。 (31414)

WebSlate

  • 添加了 选项,以防止 WebSlate 在用户处于一段距离或屏幕外时挂起。 对于需要在后台继续运行的板,但如果过度使用,可能会导致性能问题,则很有用。 通常,为了节省资源,WebSlate 会在屏幕外或变得太小而无法发挥作用后暂停 30 秒。

    选中 WebSlate 时,可以在Unity的检查器中看到此选项,作为名为“阻止挂起”的 WebSlate 脚本上的复选框。

网格 101 教程

版本 5.2314.0

版本列表和日期

这些是当前可用的产品和包。 此处看到的列表和你拥有或看到的包可能略有不同。

注意

环境项目的网格工具包包的版本号 必须 等于或早于你的环境所面向 (电脑或任务) 网格应用,否则环境将不会加载。 通常,可以使用非预览版网格工具包包来确保这一点,该包仅在匹配的网格应用在商店中可用后发布。

网格产品/包 版本 发布日期
网格工具包包 5.2314.0 2023-12-4
网格 (PC/Quest) 5.2314.0 2023-12-4

新增功能

脚本编写

  • “状态已更改”事件节点在禁用并稍后重新启用后ScriptMachine立即正常工作。 以前,节点在第一次被禁用后,错误地完全无限期地停止触发。 (26333)

  • 在脚本图中,在脚本图窗口可见时,场景发生更改时,每个节点批注“ 本地到此客户端 ”和“ 所有客户端共享 ”现在可可靠地实时更新。 (26334)

  • 网格可交互主体 |Is Selected 属性属性现在在网格仿真模式下正确联网。 以前,它的行为不正确,就像它是一个本地属性,即使它在网格客户端中联网。 (26792)

  • 网格的注入框架节点 (例如,在网格仿真模式下运行场景后, 跟踪对象状态清理数据) 不再保留在二级子图中。 (28966)

  • On State Changed 事件节点用于观察共享属性或变量时,它现在在本地更改属性或变量后立即触发。 以前,对于共享属性或变量,它仅在本地更改发送到服务器并从服务器接收回后触发,即使在发送客户端上也会产生网络延迟。 (28968)

  • 脚本图编辑器中的可用脚本节点现在可靠地表示网格中支持的内容,并且不再需要添加到UnitOptions.db版本控制,因为打开Unity项目时会根据需要自动生成。 (26109)

    以前,可以使用不兼容 (默认) 项目设置自动填充可用脚本节点的列表,或者无需筛选以仅包含网格支持的节点。 例如,如果用户在开始处理视觉对象脚本之前选择不应用网格项目设置,或者他们手动编辑了视觉脚本 的类型选项节点库 并选择了 “重新生成节点”,则可能会发生这种情况。

物理
  • 触发器 Enter触发器退出时冲突输入冲突退出的物理 事件节点现已可靠地联网。 默认情况下,这些事件在会议室中的所有客户端上可靠地触发。 但是,如果这些事件节点观察到的物理碰撞体位于 本地物理范围 组件的范围内,则事件会在一个客户端上可靠地触发,这使得它们触发的脚本流能够可靠地读取和写入共享状态 (例如:更新共享分数变量) 。 (27635)

可交互对象

  • 可装备的对象 现在响应鼠标按钮向下,而不是鼠标按钮释放。 (27858)

  • 在 Quest 设备上:若要拾取 配备的物体,只需将手靠近对象并单击“抓地力”按钮即可。

    以前,需要将控制器光线指向对象,然后单击“ 抓地力 ”按钮。 对于与附近的对象进行交互,这感觉非常不自然。 当你非常接近某个对象时,很难将控制器光线指向它进行交互。 (24187)

  • 验证添加到环境上传的唯一 ID。 若要验证场景中具有有效唯一 ID 的可交互对象,请转到 网格工具包 -> 验证唯一 ID。 (25151)

  • 可引发对象具有 “投掷方向偏移”的新设置。 这会添加到对象所引发的方向。 (26308)

  • MeshInteractableSetup 将不再允许对象既可作又可装备。 以前定义为这两者的对象只能配备,如果不是预期的,你可以将其改回可作。 (26632)

上传者

  • ContentVersion 已递增到 1.21.0:新发布的内容将仅在最近的网格版本中可见。

  • 当场景中未找到缩略图相机时,将基于行程点自动生成环境缩略图。

  • 在上传程序用户界面和日志上将 Mesh World 重命名为 Environment 集合

  • 更新了网格徽标。

  • 修复了以前为空的 “反馈 ”窗口。

  • “上传程序 ”对话框添加了工具提示,可在发生故障时包含有用信息。

  • 使扩展工具的“结果”部分成为可展开的区域。

  • 修复了以下 bug:上传程序可能显示为处于有效状态,但也会显示一个声明用户许可证无效的对话框。

  • 修复了缺少 TMP 设置不会设置默认字体的 bug。

  • 修复了 ArgumentNullException 使用 切换 [NoUpload] 后缀 而不选择 GameObject 时。

  • 在上传程序找不到 OneDrive 文件夹时添加了图形错误的处理程序。

  • 上传失败的缩略图现在将正确报告为错误,并在尝试发布资产之前失败。

  • 修复了上传禁用的条目之前显示警告的问题。

WebSlate

  • 修复了此问题:在 Quest 上,如果用户从睡眠状态恢复,如果事件具有 WebSlate,则输入事件将崩溃。 (27705)

错误消息

  • 新的 TravelExceptionReason 本地化错误消息 RelayServerUnreachableException

    哎呀! 无法连接。 请检查 Internet 连接,然后重试。 如果继续遇到此问题,检查 IT 部门并提及:客户端在连接超时时间内未收到来自中继服务器的响应。 (29004)

  • 新的 TravelExceptionReason 本地化错误消息 RelayNetworkException

    哎呀! 无法连接。 请检查 Internet 连接,然后重试。 (29004)

版本 5.2313.0

版本列表和日期

这些是当前可用的产品和包。 此处看到的列表和你拥有或看到的包可能略有不同。 我们正在努力提高产品/服务和包版本的透明度和标准化,以便更轻松地进行升级。

注意

网格 (电脑或任务) 的版本号 必须与 你正在使用的网格工具包创作包版本匹配,否则可能会出现错误或无法解释的行为。 请推迟升级网格工具包创作包,直到目标平台的网格客户端版本 (电脑或 Quest) 可用。

网格产品/包 版本 发布日期
网格工具包包 5.2313.0 2023-11-13
网格 (PC/Quest) 5.2313.0 2023-11-13

新增功能

脚本编写

Unity中 UnityEvent 和动画事件的限制

UnityEvent 和动画事件必须调用视觉对象脚本。 不允许它们直接作属性或调用方法。 此限制适用于以下情况:

  • 在时间线中 SignalReceiver
  • 动画事件中的

下面是在 中为 作为起点的 SignalReceiver UnityEvent 执行的作:

  1. 对于动画事件,这一点相同,但可以在对象上使用ScriptMachine动画事件视觉对象脚本触发器和相应的TriggerAnimationEvent函数,其中动画事件中的函数FloatIntString 参数可以任意使用或填充。

  2. ScriptMachine为使用 UnityEvent 触发器并执行想要执行的作的可视化脚本创建 。

  3. 为 UnityEvent 触发器选择描述性名称,例如 DoThing

    UnityEvent 和 的对话框

  4. 在 中 SignalReceiver,通过以下步骤设置 UnityEvent:

  5. ScriptMachine面向为视觉脚本创建的 。

  6. 对于要调用的函数,请选择 ScriptMachine > TriggerUnityEvent (string)

    1. 在参数字段中,输入 UnityEvent 触发器的名称 (例如 DoThing ,) 。

    的对话框

物理

  • 添加了 组件 LocalPhysicsScope以创建场景层次结构的一部分,其中刚体不在客户端之间同步。

  • 添加了 用于计算刚体轨迹的未来位置的 分量 ThrowTrajectory

WebSlate

  • 修复了这样一个问题:它允许脚本 (可视化脚本云脚本) 在启动时正确控制 WebSlate。

    在此修复之前,如果脚本在启动时导航或将 HTML 内容推送到 WebSlates,则由于争用条件,该脚本不会正确显示。

  • 添加了 选项,以防止 WebSlate 在用户处于一段距离或屏幕外时挂起。 对于需要在后台继续运行的板,但如果过度使用,可能会导致性能问题,则很有用。 通常,WebSlate 在离开屏幕或变得太小而无法使用后暂停 30 秒,以节省资源。

    选中 WebSlate 时,可以在 Unity 的检查器中看到此选项,作为名为“阻止挂起”的 WebSlate 脚本上的复选框。

上传者

  • ContentVersion已递增为 1.20.0:新发布的内容将仅在最近的网格应用中可见。

  • 修复了“世界列表”和“环境”下拉列表中的呈现问题。

  • 修复了当文本溢出窗口边界时,创建选项卡 UI 绘制错误的问题。

  • 修复了上传程序在生成失败后引发正则表达式异常的 bug。

  • 添加了发布资产时潜在的 null 引用异常检查。

内容性能分析器 (CPA)

  • 内容性能分析器和网格性能探查器报告的批计数现在根据Unity的 SRP 批处理器标记进行更准确的计数。

    注意

    批计数将不再在Unity编辑器之外报告,因为它们无法在发布版本中准确计数。

已解决的产品问题

  • 此问题:“在包说明部分中的 com.microsoft.mesh.toolkitUnity 包管理器中查看时,包的隐私声明将被截断”-- 已修复。