版本: Unity 6 (6000.0)
语言English
  • C#

NavMeshBuilder.UpdateNavMeshDataAsync

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们确实会阅读用户提出的每个建议更改,并在适用时进行更新。

关闭

提交失败

由于某种原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

声明

public static AsyncOperation UpdateNavMeshDataAsync(AI.NavMeshData data, AI.NavMeshBuildSettings buildSettings, List<NavMeshBuildSource> sources, Bounds localBounds);

参数

data 要更新的 NavMeshData。
buildSettings 用于更新 NavMeshData 的构建设置。构建设置也会与数据一起进行哈希处理,因此更改设置可能会导致完全重建。
sources 用于烘焙的输入几何体列表,它们描述了可行走表面或需要避免的障碍物。
localBounds 相对于位置和旋转的边界框,描述了应构建 NavMesh 的体积。

返回值

AsyncOperation 可用于检查更新的进度。

描述

基于源异步且增量地更新 NavMeshData。

每次构建或更新 NavMeshData 时,源数据都会进行哈希处理,哈希值会与 NavMeshData 一起存储。

调用 UpdateNavMeshDataAsync() 时,首先会比较哈希值,并且仅重建已更改的部分。因此,源列表应始终包含所有输入几何体,即使它们没有移动或更改。如果在调用 UpdateNavMeshDataAsync 之间修改了源列表,则缺少/添加的源将被视为更改。尝试按与上次更新相同的相对顺序提供自上次更新以来未更改的源,因为它们的顺序会影响哈希值。此措施可确保不会不必要地重建未更改的部分。

必须为 localBounds 参数提供一个 Bounds 结构。

其他资源:NavMeshBuilder.Cancel