背景
写文章,我是认真的,我就是头发掉光的littleboy。
最近开始要做一个强化学习的运动控制项目,能用到以上几个软件的应该都是工程项目,不然做游戏也不会用这几个软件建模,哭死在路上了。
查了网上相关信息,太少,都是怎么用3D max导出max文件到unity,对于工程的怎么将模型导入,少得可怜,可能工程的做到强化学习这的相对比例较少吧,经过多番尝试,记录下走的路程。
方法
1、导出模型给3D unity
网上给出一些给Unity的模型格式,但是大多数都还是3D Max导出的模型输出给Unity。所以,第一步需要解决的问题是将模型导出格式为.max格式,3DMax 另存为.max格式,就可以了。
然后将生成的 .max文件复制到 unity工程文件中的assets文件夹下,打开工程,会自动检测到该模型,然后直接拖拽到环境中。
2、将模型导出到3D Max
ProE/Creo可以选择stp格式输出,但是直接输出的话,生成的是一个整体文件,导入到3D Max中就无法编辑了,如果是不需要编辑就跳过下边的内容。
如果到3D Max中需要继续编辑的话,就在另存为stp格式时做一下选择,如下图,点击选项:
可以看到:
这两个位置需要修改,如下,方法不是绝对,欢迎大家尝试并讨论:
点击确定,保存到您要的文件夹内,因为会产生很多零件,建议单独建一个文件夹,然后再3D Max中打开文件,选择保存的stp文件们就可以全部导入,注意导入的时候有选择,这个时候,有几个选项,以组,层,等形式导入,不要选组,要以展平方式,这为之后导入unity中进行刚体编辑提供基础,不然不能编辑。然后全部解冻,就可以对独立的文件编辑了:
如果是solidworks模型建议参看这个文档SolidWorks转3DMAX再到Unity3D的转换模型及单位设置,写的挺详细,可以借鉴。
最后说一下,尺寸变换的问题,再creo中导入到3Dmax中会缩小100,300mm会变成3mm,然后导入到unity中又会放大,结果尺寸不变。
总结
整体从解决为题的路径出发,采用倒叙方式,希望看的时候不要迷糊。成功导入到3D Unity中后,希望大家环境搭建顺利,强化学习训练顺利。
后续,我会慢慢把我搭建仿真环境的方法,利用强化学习训练的代码,以及基于Google Colab申请免费服务器训练的方法分享出来,和大家相互学习和交流,敬请期待。