枢轴点绘制器工具1.0

枢轴点绘制器工具1.0 MAXScript的相关指南,该软件将模型枢轴点和旋转数据存储在顶点内以用于交互动画。

Choose your operating system:

Windows

macOS

Linux

最新版的 枢轴点绘制器工具 可以在此处找到。2.0版提供简化的管道来创建交互式植被。

枢轴点绘制器工具(Pivot Painter Tool) 是一种MAXScript,可将模型枢轴点和旋转信息存储在模型的顶点数据中。这些信息随后即可在虚幻引擎的着色器系统内引用,以创建交互效果。

示例视频中显示的动作使用顶点着色器实时生成。每棵草都围绕根部旋转和弯曲。树的树枝和叶子形成一个层次结构,围绕着它们各自的枢轴点生成动画,同时继承父项的动作。子对象的旋转同样会被存储,这样将确保对风力作出逼真的动态反应。

添加枢轴点绘制器的材质函数后,创建这些着色器变得愈加简单。示例内容通过展示如何生成诸如以上所示的动画,也大有帮助。现在,检索子对象枢轴点已经十分简单,只需在3ds Max中使用枢轴点绘制器脚本处理网格体,导入文件,然后使用可用的枢轴点绘制器函数创建材质。材质函数包含双级层级和单级层级的枢轴点。

以这种方式创建动作有其优势。使用此技术处理的模型在内存方面仅比标准静态网格体大18%。其动画比骨架动画便宜得多,因为前者是动态计算的,而且不需要存储。顶点着色器指令计数通常比像素指令计数对性能的影响更小,这是因为与模型上顶点的数量少于屏幕上像素的数量。

在可实现功能方面,以下链接中的示例着色器只是冰山一角。对可用信息进行实验可能会吸引用户探索其他可能的用途。如果给予访问子对象级别信息,玩家互动、有趣的风源、非植被相关动作和其他效果都是可能的。

安装

您可以在以下位置找到 枢轴点绘制器(Pivot Painter) 脚本。

[UE4Directory]/Engine/Extras/3dsMaxScripts/PivotPainter.ms

此视频介绍如何安装脚本,以及如何创建键盘快捷方式和菜单来打开枢轴点绘制器工具。

准备工具

此视频将介绍脚本的"准备工具(Prep Tools)"部分,以及有关整个过程的工作流程提示和信息。准备工具(Prep Tools)部分包含将模型元素作为单独的对象分离的选项,以及一些有助于轻松创建新枢轴点的工具。

准备工具(Prep Tools) 用于将给定的模型元素分离成一系列的新模型,并将它们的枢轴点移至理想的位置。这些工具并非必须使用。提供它们只是为了带来便利。如果正在处理的模型已经分离,它的枢轴点位于它应该旋转的点,且模型X轴向下面对模型的长度,则模型适合进入下一步。

示例: 一茬草应该分离成单独的一棵棵草。一棵给定的草在被风吹动时应围绕根部旋转。因此,它的枢轴点应位于草模型的根部,枢轴点的X轴应该向下指向模型的长度,在大多数情况下草是向上的。

层次绘制器

此视频介绍脚本的"层次绘制器(Hierarchy Painter)"部分。该工具的这一部分用于存储父子关系(例如树枝与叶片之间的关系),以及网格体中的模型枢轴点和旋转信息。

如果模型需要层级,应仅使用脚本的"层级绘制器(Hierarchy Painter)"部分来处理模型。有叶子的树是一个很好的用例,但草则不然。应使用"按对象绘制器(Per Object Painter)"部分来绘制草。

此外,分支/父项枢轴点需要定位在"父枢轴点最大距离(Max dist for parent piv)"规定的框内。例如:如果在绘制模型时"父枢轴点最大距离"设置为4096,则分支/父项对象枢轴点可以位于X轴、Y轴正负2048之内以及Z轴0至4096之内的任何位置。此外,如果在模型处理期间"父枢轴点最大距离"设置为4096以外的任何值,则在虚幻引擎的模型着色器中也应使用相同的数值。

pivotpainter_hierarchydata.png

按对象绘制器(Per Object Painter)

此视频介绍了脚本的"按对象绘制器"部分的选项。此部分还讨论了一些可能的用途,以及关于如何在模型上存储数据的一些信息。

3ds Max示例文件

该文件包含视频教程中使用的树的副本。

  • Tree.max 单击右键 ,然后选择 另存为 以下载)

要求

  • 3ds Max - 脚本已经使用3ds Max 2010和2012版本进行了测试。

  • 枢轴点绘制器的材质函数。可以使用脚本而不使用函数,但这些函数可以使数据更容易使用。

其他注意事项

您应只使用脚本的"层级绘制器(Hierarchy Painter)"或"按对象绘制器(Per Object Painter)"部分来处理模型,而不能同时使用这两个部分。如果您使用了"层次绘制器"来绘制模型,则在对象材质中应使用"PivotPainter HierarchyData"。如果您使用了脚本的"按对象绘制器"部分,则应使用"PivotPainter_PerObjectData"来解码枢轴点信息。

如果已绘制且在导出时未进行缩放/更改,3ds Max的场景单位应设置为厘米。必须在3DS Max与虚幻引擎之间保持比例不变。否则会产生不良后果。

UE4中现已不再使用风吹Actor(Wind Actor),后者可使用材质参数集和蓝图(Material Parameter Collection and Blueprint)来替代。您可以使用浮点4风吹Actor参数(Wind Actor Parameter)来创建更新材质参数集合(Material Parameter Collection)的蓝图。该材质参数集合(Material Parameter Collection)随后可以在给定的植物材质中引用,以替代风吹Actor(Wind Actor)。

欢迎帮助改进虚幻引擎文档!请告诉我们该如何更好地为您服务。
填写问卷调查
取消