包含此页的版本:
不含此页的版本:
地形碰撞器(Terrain colliders) 地形形状的碰撞器组件,用于处理与其附加的地形对象形状相同的碰撞表面的碰撞。更多信息
请参阅术语表匹配地形场景中的地形。地形游戏对象会向场景添加一个大型平面,您可以使用地形的检查器窗口创建详细的景观。更多信息
请参阅术语表确切地说,对于极其精确的地形碰撞当物理引擎检测到两个游戏对象的碰撞器接触或重叠时,当至少一个游戏对象具有刚体组件并且处于运动状态时,就会发生碰撞。更多信息
请参阅术语表模拟。地形碰撞体一种不可见的形状,用于处理对象的物理碰撞。碰撞体不需要与对象的网格体完全相同的形状 - 在游戏中,粗略的近似值通常更有效且难以区分。更多信息
请参阅术语表是地形最精确的碰撞器类型。
与原始碰撞体和网格碰撞器自由形状的碰撞器组件,它接受网格体参考来定义其碰撞表面形状。更多信息
请参阅术语表,地形碰撞器是基于高度图的。PhysX 从heightmap存储对象高度数据的灰度纹理。每个像素存储垂直于该像素所表示的面的高度差。
请参阅术语表相应地形的数据,而不是来自预定义形状或网格Unity 的主要图形原语。网格体构成了 3D 世界的很大一部分。Unity 支持三角或四边形多边形网格。Nurbs、Nurms、Subdiv 曲面必须转换为多边形。更多信息
请参阅术语表.
有关 PhysX 中基于高度图的碰撞器的详细信息,请参阅 Nvidia PhysX 文档几何体:高度场。
地形碰撞器构建其碰撞几何体,以匹配分配的地形数据资产的高度图数据,包括其形状、位置和比例。这样做的好处是,您可以使碰撞器的形状与可见地形的形状完全相同,从而创建更精确、更逼真的碰撞。
地形有两种笔刷类型,可将预制件:一种资产类型,允许您存储包含组件和属性的游戏对象。预制件充当模板,你可以从中在场景中创建新的对象实例。更多信息
请参阅术语表到地形:树木和细节。这些画笔允许您快速添加树木、灌木丛、岩石和其他地形细节。有关更多详细信息,请参阅有关画笔的地形文档,树游戏对象和相关组件,允许您将树资源添加到场景中。您可以在“树检查器”窗口中向树添加树枝级别和叶子。更多信息
请参阅术语表,以及草和其他细节。
创建预制件时,将所需的任何碰撞器添加到该预制件。当你使用树笔刷将该预制件应用到地形时,你需要使用 地形碰撞器来启用或禁用这些碰撞器。在地形碰撞器上,使用 启用树碰撞体(Enable Tree Colliders) 切换树预制件碰撞器。
地形碰撞器仅为使用树笔刷添加的预制件生成碰撞器。它不会为使用细节笔刷添加的预制件生成碰撞器,因为细节笔刷仅渲染预制件的网格体,而不渲染其碰撞器。如果你想在地形上做点什么游戏对象Unity 场景中的基本对象,可以表示角色、道具、风景、相机、航路点等。游戏对象的功能由附加到它的组件定义。更多信息
请参阅术语表要拥有碰撞器,请使用 树(Trees) 笔刷添加它。
Unity 仅在运行时生成树预制件碰撞器,因此它们仅在运行时显示在 Physics Debug 碰撞器几何体视图中。
在几乎所有情况下,地形碰撞器都是地形的正确碰撞器选择。地形碰撞器准确地表示地形的形状,从而能够精确地碰撞检测Unity 执行的自动过程,用于确定具有刚体和碰撞器组件的移动游戏对象是否与任何其他碰撞器接触。更多信息
请参阅术语表在地形和其他碰撞器之间。地形碰撞器还需要最少的设置和配置时间,因为 Unity 会在您创建地形时自动生成它们。
如果你正在寻找提高性能的机会,只有当地形具有大面积的平坦区域,或者物理碰撞不需要非常精确时,你才可以尝试替代地形碰撞的方法。以下部分介绍两种替代方法。
你可以创建分辨率较低的地形数据,并将其应用于地形碰撞器。
复制地形的现有地形数据,并降低分辨率。 将 地形碰撞体的 TerrainData 字段设置为降低分辨率的 TerrainData。
请注意,Unity 在 Terrain 上显示警告检查器一个 Unity 窗口,显示有关当前选定游戏对象、资产或项目设置的信息,允许您检查和编辑值。更多信息
请参阅术语表碰撞器和地形具有不同的地形数据,但只要您有意这样做,您就可以忽略此作。
你可以导出地形的高度图,并使用外部软件将其转换为简化的网格体碰撞器。
安装地形工具包。 使用 导出高度图(Export Heightmap) 工具导出地形高度图。 使用3D建模软件从高度图创建网格体。 使用 3D 建模软件在网格上运行网格简化例程。 将网格体导入回 Unity 以用作网格体碰撞器的源。