Skip to content

简介

网格(Mesh)是 SandMod 用于描述形状的数据集合,通常应用于渲染和物理系统中。在渲染系统中网格可以与材质(Material)一起使用,网格定义被渲染的对象的形状,材质则定义其表面的外观。在物理系统中,网格可用于定义 碰撞体(Collider)的形状。

【Mesh001.png】

SandMod 中模型 网格(Mesh)的线框视图。

网格类型

在 SandMod 中 网格(Mesh)主要分为静态网格和蒙皮网格:

  • 静态网格(Static Mesh)是 SandMod 中的一种基本元素,用于在 场景(Scene)中创建场景几何体。其中静态指的是网格中的顶点互相之间的相对静态,您可以通过 变换(Transform)组件或其他如 刚体(Rigidbody)等物理组件让静态网格在场景中运动。

【Mesh002.png】

静态网格示例。

  • 蒙皮网格(Skinned Mesh)由构成蒙皮网格体表面的一组多边形,以及用于使多边形顶点产生动画的一组层次化的关联骨骼。在游戏创作过程中,通常使用蒙皮网格体代表角色或其他带动画的 游戏对象(Game Object)。

【Mesh003.gif】

蒙皮网格随着骨骼变换而网格发生变形。

创建网格

您可以通过以下方式将 网格(Mesh)添加到游戏项目中:

👉 导入资产(Asset Importing),3D 模型、骨骼及其动画都是在外部建模和动画应用程序(3DSMax、Maya、blender 等)中创建的,然后通过 SandMod 的 项目窗口(Project)把这些模型导入到 SandMod,并自动生成对应的 网格资产(Mesh Asset)和将 网格(Mesh)、贴图(Texture)与 材质(Material)打包成 预制体(Prefab)。

👉 自定义网格(Mesh Customing),在游戏项目运行时使用代码创建自定义网格。

使用网格

下面的章节将详细介绍如何在 SandMod 编辑器中创建、编辑和渲染网格。

👉 网格数据(Mesh Data),了解网格包含的数据,有助于您决定在项目中如何使用网格。

👉 网格资产(Mesh Asset),通过网格资产在 SandMod 编辑器中储存特定的网格数据,便于对网格数据的引用。

👉 网格渲染器(Mesh Renderer)组件,渲染不会发生变形的静态网格。

👉 蒙皮网格渲染器(Skinned Mesh Renderer)组件,渲染会变形的蒙皮网格,以及关联对应的骨骼。

👉 自定义网格(Mesh Customing),在游戏项目运行时使用代码动态编辑网格的方法。