前言
本文将从PIXYZ工作流出发,记录导入Unity之前的步骤和部分技术细节。
Pixyz处理模型步骤简介
Import
常用的Import方法有两种:
- 直接拖拽cad模型到PIXYZ窗口界面,使用默认导入参数导入
- 使用Import wizard.可自定义导入参数
由于Unity引擎使用左手坐标系,和y轴向上。因此需要在wizard窗口中取消选中right hand 并且选择y-up。这样能够保证在导入Unity之后,不会出现镜像翻转的问题。
Tessellate
承接2.1,Tessellate是重要的一步,否则导出的模型将会是一片空白。
这里有一个小tips分享给工业刚入门的同学:
1、工厂在设计生产产线的时候一般会先设计cad图纸
2、CAD图纸与实际产线能够完全匹配,具体误差在0.001毫米的级别。
3、实际产线是使用高精度机床加工而成,不会存在于实际产线不相同的问题。
为什么需要强调前面几个问题?这里是强调CAD模型的精确程度,Tessellate之后的模型也具有极高的精度。因此在后面做运动约束的时候需要额外小心,不要引入其他误差。
repair mesh
在Tessellate之后,会存在一些网格问题,这些问题在Unity中解决时很麻烦的一件事,因此这里需要使用Pixyz工具进行快速修复。
remove hiden mesh
移除看不见的模型,减少不必要的浪费。
merge mesh
合并网格,在Unity中,减少draw call。提高运行效率。
integrate component
合并组件和节点,这一点在工厂数字孪生中及其重要。
export selection
导出所选项。这里需要提醒的是,注意一些经常变动的模型,需要单独导出,这样方便后面模型进行更新。
Unity在新模型导入的时候有一个特征,如果新模型直接覆盖旧的模型,那么Unity会自动在场景中替换旧的模型。这一点在场景内容更新的时候十分重要。
Pixyz实用工具
mapping uv
explode mesh
checker
isolation
Pixyz & Unity
在处理完成后,将模型导出成fbx文件,再导入Unity中。为什么是fbx,首先fbx是Unity支持比较良好的,且具有广泛三维软件支持的一种三维文件格式。其次,fbx包含有大量的模型信息,保证在处理完成后,导入Unity时不会出现异常。最后就是,以后对该部分进行更新的时候,只需要替换fbx模型即可,不需要多余的操作。
tips:在处理的时候,尽量遵守:
- 不变的导出为一个模型
- 一个整体的导出成一个模型
总结
本文与2.1不同的是,2.1普遍适用于众多模型的导入,而在本文更多注重工业领域CAD导入的讨论。如果有更好的方法或者文中有不正确的地方欢迎指出。
创作不易,欢迎一件三连。