3DMax 导出的 OBJ文件默认是 GB2312的编码(为了支持中文)
但是 ThreeJs 中的 ObjLoader 的 加载不支持 UTF-8 外的其他格式,导致加载进来后Object3d中的中文全是乱码;
解决方案:
最笨的方案当然是批量修改obj文件的编码格式;
还可以直接修改ObjLoader.js 的源文件,若看到这里了,会发现ObjLoader底层是用FileLoader加载的,也不支持修改加载编码格式,需要再往上深扒,最终找到javascript 的原生加载api,然后换之即可;
或者在外部使用FileReader 用 readAsText('gb2312')的编码格式来read进来,然后用TextEncode().encode()方法将read进来的text转成utf8格式的arraybuffer,再给ObjLoader.parse()即可。