如何让Unity中的多个模型共用同一个材质球呢?下面我就来分享一下我之前在做模型的时候所使用的方法和思路,供大家学习。

Unity文档中曾明确提到,尽可能的共用Material,这主要是因为渲染引擎一般会按照材质对需要渲染的对象进行排序,同一个材质的模型可以合并到同一个批次进行渲染。

所以,文档中建议一个模型尽量只采用一个材质,一类模型最好共用一个材质。

但是在实际制作过程中发现,使用同一张texture的模型在导入后Unity会为每个模型生成一个Material,而且导入到Unity中的模型还不能修改Material,只能将该模型摆放到Scene之后再重新指定材质,过程非常的繁琐,而且一旦更新了模型,这个过程又要重新做一次。

模型的贴图文件必须放在Textures目录下,这个目录可以与Mesh文件的目录平级,也可以在上级目录,总之必须使用这个目录名。

Mesh Importer在执行导入的时候会根据Texture名在Material目录下生成对应的材质,同时有新的mesh导入时如果用到了同一张Texture,也会先去查找是否已 经存在了Material,否则才会重新创建。

简单来说,只要模型在制作的时候注意一下这个规则,把贴图文件都放到Textures目录下面,后面的工作都会顺利很多。