使用超图 WebGL API 时需要将三维模型处理成S3M文件(超图三维数据标准),S3M文件的大小影响着在前端加载模型的体验。
S3M过大,使得前端请求S3M文件时需要更多的下载时间,占用请求队列,并且S3M文件过大,也说明了顶点或三角面多,导致渲染速度降低。
按照超图的文档,应尽量保证S3M文件不大于1M。
经过测试,影响S3M文件大小主要有两个方面:
1、切片范围内三角面多;
2、材质贴图数量多;
三角面数量多
在三维模型软件中打开原始模型,检查每个模型对象的三角面数量,保证单个模型的三角面不超过三万个,若超过三万个三角面,应将模型分成2个或多个部分。如:将建筑物主体与细节部件分离,在超图desktop分为多个图层分别切片;
除此之外,生成三维缓存时,可缩小切片边长,减少切片范围,也可使得S3M文件减小。
材质贴图数量多
单个模型的贴图数量不超过100个,若超过100个,则应分成2个或多个对象。
同时控制贴图文件大小。
使用贴图时,遵循以下规范:
1、贴图尺寸为2的N次方,且最大不超过1024X1024;
2、尽量使用JPG、PNG、GIF格式