这两天一直在为贴图问题困扰,研究了许久,终于找到了解决方法,分享给大家,希望能帮到大家可以减少入坑时间
1.贴图文件夹
我们在给3d max贴图的时候,一定要把图片资源都放在同一个文件夹里,不要让贴图文件散落在各个不同路径下。而且贴图文件夹尽量用英文命名,因为旧版本识别中文可能会出现问题。不同个文件夹也行,但是要跟.max文件同一级目录,如下
2.导出fbx
使用3d max导出为fbx文件,导出的时候在“坐标和媒体”一栏,要勾选“嵌入媒体”,导出文件夹选择项目文件夹,即导出后的fbx文件跟贴图文件夹同一级
3.导入到unity
3.1 External方式
点击unity菜单栏Assets的Import New Asset,找到导出的fbx文件,导入到unity。此时不要着急拖到场景,点击一下fbx文件,在inspector面板的Materials一项,把location改为Use External Materials(Legacy)
,再把Naming改为From Model's Materials
,最后点击Apply
,它会自己生成两个文件夹,一个是“Material”,另一个是“文件名.fbm”。此时再把fbx拖到场景中就发现贴图可以正常显示了
若是unity3d 5.X版本,导入资源就会自动生成那两个文件夹,不需要手动设置
如果是较新的Unity版本,例如2021,可以试着把Material Creation Mode改为Standard(Legacy)
, Location改为Use External Materials(Legacy)
,把 Name改为By Base Texture Name
3.2 embedded方式
如果上面那种传统的External方式还是无法显示贴图,可以试一下内嵌(embedded)的方式,我们把Location改为Use Embedded Materials
,点击Apply
应用一下,然后再分别点击Extract Texures
和Extract Materials
这两个按钮,它们分别会让你选择一个存放贴图、材质的位置,这时候如果正常生成了贴图和材质文件,那应该是可以正常显示了