最近在弄一个模型动态导入unity的功能,给了一个.3mx文件格式的模型,需要在unity展示模型。
.3mx文件是无法直接在unity加载的,在一个相关插件项目时,.3mx在普通管线项目中是能够动态加载的,但是运用到HDRP项目中,期间遇到好几个问题。
3mx导入普通管线unity场景比较简单,根据data://Production_10/Scene/Data/Production_10.3mxb格式就能把放在项目文件夹StreamingAssets中的模型文件加载进来,运行即可。
1、创建HDRP项目时,插件导入进来是没有问题的,先不提运行之后的问题,如果你将插件导入其他HDRP项目中,可能会存在这样一个问题,
这里面提示该项目已经有此引用了,删除插件对应dll文件即可。
2、之后会有这样一个报错,代码有一个System.Web引用找不到,
按理说,只要在项目添加System.Web就能解决该问题,但是并没有,添加引用编译后unity这个报错还是无法消除,最后在网上找一个别人的资源,能够解决这个问题。
3、项目没有报错之后,运行unity,发现场景的模型并没有材质贴图,代码这块一开始是普通管线的设置材质代码,在HDRP项目中,修改成下面的代码就能成功加载模型,并且打包后也能把.3mx模型加载进来。