Untiy模型、贴图制作规范及注意事项
模型制作规范
当一个VR模型制作完成时,它所包含的基本内容包括场景尺寸、单位,模型归类塌陷、命名、节点编辑,纹理、坐标、纹理尺寸、纹理格式、材质球等必须是符合制作规范的,一个归类清晰、面数节省、制作规范的模型文件对于程序控制管理是十分必要的。
模型进入引擎前的制作流程简单概括如下:素材采集 -->模型制作-->贴图制作-->场景塌陷、命名、展UV坐标-->灯光渲染测试-->场景烘焙-->场景调整导出。
具体的模型(这里的建模以3ds Max为例)制作规范要求如下:
1、在建模型前先设置好单位,在同一场景中会用到的模型的单位设置必须一样,模型与模型之间的比例要正确,和程序的导入单位一致,即便到程序需要缩放也可以统一调整缩放比例。统一单位为米。
2、所有模型初始位置创建在原点。没有特定要求下,必须以物体对象中心为轴心。若有CAD做参照,制作人员必须以CAD底图的文件确定模型位置,并且不得对这个标准文件进行任何修改。导入3ds Max中的CAD底图最好在(0,0,0)位置,以便制作人员的初始模型在零点附近。
3、面数控制。对于手机移动端设备每个模型控制在300~1500个多边形将会达到比较好的效果。而对于PC平台,理论范围1500~4000.如果游戏中任意时刻内屏幕上出现了大量的角色,那么就应该降低每个角色的面数。正常单个物体控制在1000个面以下,整个屏幕应控制在7500个面以下。所有物体不超过20000个三角面,否则导出时会出错。
4、整理模型文件,仔细检查模型文件,尽量做到最大优化,看不到的地方不需要的面要删除,合并断开的顶点,移除孤立的顶点,主要是为了提高贴图的利用率,降低整个场景的面数,以提高交互场景的运行速度,同时注意模型的命名规范。模型给绑定之前必须做一次重置变换。
5、保持模型面与面之间的距离推荐最小间距为当前场景最大尺度的1/2000。例如,在制作室内场景时,物体的面与面之间距离不要小于2mm;在制作场景长(或宽)为1km的室外场景时,物体的面与面之间距离不要小于20cm。如果物体的面与面之间贴得太近,会出现两个面交替出现的闪烁现象。模型与模型之间不允许出现共面、漏面和反面,看不见的面要删掉。在建模初期一定要注意检查共面、漏面和反面的情况。
6、可以复制的物体尽量复制。如果一个1000个面的物体,烘焙好之后复制出去100个,那么它所消耗的资源,基本上和一个物体所消耗的资源一样多。
7、建模时最好采用Editable Poly面片建模,这种建模方式在最后烘焙时不会出现三角面现象,如果采用Editable Mesh在最终烘焙时可能会出现三角面的情况。
8、模型塌陷。当一栋建筑模型经过建模、贴纹理之后,然后就是将模型塌陷,这一步工作也是为了下一步烘焙做准备。所以在塌陷时要注意以下一些问题:
(1)按照“一建筑一物体”的原则塌陷,体量特别大或连体建筑可分塌为2~3个物体,但导出前要按建筑再塌成一个物体,城中村要按照院落塌陷;
(2)用Box反塌物体,转成Poly模式,这时需检查贴图有无错乱;
(3)塌陷物体,按楼或者地块来塌陷,不要跨区域塌陷;
(4)按项目对名称的要求进行严格的标准的命名;
(5)所有物体的质心要归于中心,检查物体位置无误后锁定物体。
9、模型不能使用中文命名,必须使用英文命名,不然在英文系统里会出问题。地块建筑模型不允许出现重名,必须按照规范命名。
10、通过镜像复制创建的模型,需要修改器修正。
第一步:需要选中镜像后的物体,然后进入Utilities面板中单击Reset XForm,再单击Reset Selected;
第二步:进入Modfiy面板选取Normal命令,反转一下法线即可。
11、处理烘焙物体黑缝。烘焙时,如果图片不够大的时候,往往会边缘产生黑缝。
(1)如果做比较复杂的鸟瞰楼体,可以把楼体合并成一个物体变成多重材质,然后对楼体进行整体完全烘焙,这样可以节省很多资源。
(2)对于建筑及地形,须检查模型的贴图材料平铺的比例,对于较远的地表(或草地),可以考虑用一张有真实感的图来平铺,平铺次数少一些。对于远端的地面材料,如果平铺次数大了,真实感比较差。
材质贴图规范
1、Unity 3D引擎对模型的材质有一些特殊要求,3ds Max中不是所有材质都被Unity3D软件所支持,只有Standard(标准材质)和Multi/Sub-Object(多维/子物体材质)被Unity3D软件所支持。注意:Multi/Sub-Object(多维/子物体材质)里面的子材质也必须为Standard(标准材质)才能被支持。
2、Unity3D目前只支持Bitmap贴图类型,其他所有贴图类型均不支持。只支持DiffuseColor(漫反射)和Self-lllumination(自发光,用来导出Lightmap)贴图通道。Self-lllumination(不透明)贴图通道在烘焙Lightmap后,需要将此贴图通道Channel设置为烘焙后的新Channel,同时将生成的Lightmap指向Self-lllumination。
3、建筑的原始贴图不带通道的为JPG,带通道的为32位TGA,但最大别超过2048;贴图文件尺寸必须是2的N次方(8、16、32、64、128、256、512),最大贴图尺寸不能超过(1024*1024)。在烘焙时将纹理贴图存为TGA格式。
模型烘焙及导出
1、模型的烘焙方式有两种:一种是LightMap烘焙贴方式,这种烘焙贴图渲染出来的贴图只带有阴影信息,不包含基本纹理。具体应用于制作纹理较清晰的模型文件(如地形),原理是将模型的基本纹理贴图和LightMap阴影贴图两者进行叠加。优点是最终模型纹理比较清楚,而且可以使用重复纹理贴图,节约纹理资源;烘焙后的模型可以直接导出FBX文件,不用修改贴图通道;缺点是LightingMap贴图不带有高光信息;另一种是CompleteMap烘焙方式,这种烘焙贴图方式的优点是渲染出来的贴图本身就带有基本纹理和光影信息,但缺点是没有细节纹理,且在近处时纹理比较模糊。
2、烘焙贴图设置。在进行Completemap烘焙方式设置时应注意:贴图通道和物体UV坐标通道必须设置为1通道,烘焙贴图文件存储为tag格式,背景要改为与贴图近似的颜色;Lightingmap烘焙设置时,和Completemap设置有些不同,贴图通道和物体UV坐标通道必须设置为3通道,烘焙时灯光的阴影方式为adv.raytraced高级光线跟踪阴影,背景色要改为白色,可以避免黑边的情况。主要物体的贴图UV必须手动展开。
3、模型导出时将烘焙材质改为标准材质球,通道为1,自发光100%;所有物体名、材质球名、贴图名保持一致;合并顶点,清除场景,删除没有用的一切物体;清材质球,删除多余的材质球(不重要的贴图要缩小);按要求导出FBX(检查看是否要打组导出),导出FBX后,再重新导入3ds Max中查看一遍FBX的动画是否正确;根据如下内容对照文件是否正确:
模型部分:
(1)场景单位尺寸是否为米,建筑位置是否正确;
(2)模型比例是否正确;
(3)模型结构是否清晰(屋顶、立面、底商、入口、台阶等);
(4)模型命名是否符合规范;
(5)模型精度是否符合既定级别标准;
(6)模型坐标系是否归零;
(7)模型是否共面、反面或漏面;
(8)场景内模型是否有空物体存在;
(9)带通道的模型是否独立出来;
(10)模型导出前模型是否塌陷且合并顶点;
(11)LOD模型级别是否为既定级别标准;
(12)LOD模型命名是否规范;
(13)道路桥梁模型段数是否合理;
(14)模型烘焙前UV是否正确;
(15)地形结构是否完整(小品、路灯、花池、园林等);
材质贴图:
(1)材质贴图类型是否符合规范;
(2)贴图命名是否符合规范;
(3)贴图格式是否为DDS;
(4)贴图尺寸是否符合规范;
(5)纹理比例是否合理;
(6)贴图坐标是否正确;
(7)材质贴图通道是否正确;
(8)LOD贴图命名是否规范;
(9)材质贴图是否重名;
(10)模型之间纹理交接是否正确;
(11)除需用双面材质表现的物体外,其他物体不能用双面材质;
(12)地形纹理贴图是否符合现状;
效果部分:
(1)光影关系是否统一;
(2)整体关系是否一致;
(3)色彩关系是否协调;
(4)景观、小品摆放位置是否合理;
(5)树种是否与现状相符;
(6)人物、汽车拜访位置是否合理;
(7)一级建筑是否为清晰纹理(基本纹理+LightingMap);
导出部分:
(1)模型导出前是否转成Edit Poly方式;
(2)模型导出后是否进行优化处理;
(3)需要加特效的模型是否进行特效处理;
文件管理:
(1)项目文件夹是否按规范建立;
(2)模型制作中的过程文件是否按照规范进行备份;
文件备份标准
1、最终确认后的max文件分角色模型、场景模型、道具模型带贴图存放到服务器相应的“项目名/model/char”、“项目名/model/scene”、“项目名/model/prop”文件夹里面。动画文件对应的存放至anim文件夹中。
2、导出给程序obj、fbx等格式文件统一存放至export文件夹下的子文件夹anim、model、prop。
最终递交备份的有八大文件类:
(1)原始贴图文件:存放地型和建筑在制作过程中的所有的贴图。
(2)烘焙贴图文件:存放地型的最终贴图和建筑的最终烘焙贴图,tga格式的,同时这里面有一份转好的贴图。
(3)UV坐标文件:存放地型和建筑烘焙前编辑的UV坐标;
(4)导出fbx文件:存放最终导出的地型和建筑的fbx文件。
(5)Max文件:原始模型、未做任何塌陷的,有UVW贴图坐标的文件。
(6)烘焙前模型文件:已经塌陷完的,展好UV的,调试好灯光渲染测试过的文件。
(7)烘焙后模型文件:已经烘焙完的,未做任何处理的文件。
(8)导出模型文件:处理完烘焙物体,合并完顶点,删除了一切没用物体的文件。
From 《虚拟现实开发圣典》
抄录 BY --HYZ