3D模型目前的有成千上万钟格式,每一种格式都具有不同的目的、用途以及复杂性。 虽然 three.js已经提供了多种导入工具 选择正确的文件格式以及工作流程将可以节省很多时间,以及避免很多挫折。某些格式难以使用,或者实时体验效率低下,或者目前尚未得到完全支持。
对大多数用户,本指南推荐了以一个工作流程,以及当没有达到预期的效果时给你提供的建议。
如果你是第一次运行一个本地服务器,可以先阅读[link:#manual/introduction/How-to-run-things-locally how to run things locally]。 通过正确地托管文件,可以避免很多查看3D模型时的常见错误。
如果有可能的话,我们推荐使用glTF(GL传输格式)。.GLB和.GLTF是这种格式的这两种不同版本, 都可以被很好地支持。由于glTF这种格式是专注于在程序运行时呈现三维物体的,所以它的传输效率非常紧凑,而且加载速度很快。 功能方面则包含了网格、材质、纹理、皮肤、骨骼、变形目标、动画、灯光和摄像机。
公共领域的glTF文件可以在网上找到,例如 Sketchfab,或者很多工具包含了glTF的导出功能:
倘若你所喜欢的工具不支持glTF格式,请考虑向该工具的作者请求glTF导出功能, 或者在the glTF roadmap thread贴出你的想法。
当glTF不能被作为一个选项的时候,诸如FBX、OBJ或者COLLADA等等其它受欢迎的格式也是可以使用、并且是也定期维护的。
你花了几个小时亲手建了一个堪称杰作的模型,现在你把它给导入到网页中—— 哦,我的天呐~😭它导入以后完全失真了、材质贴图丢了、或者说整个模型完全丢失了! 接下来我们来按照下面的步骤排除故障:
倘若你已经尝试经历了以上故障排除的过程,但是你的模型仍然无法工作,寻求正确的方法来获得帮助将使您更快地获得解决方案。 您可以将您的问题发布到three.js forum, 同时,尽可能将你的模型(或者一个简单的、具有相同问题的模型)可用的包含在你能够使用的任何格式中,为其他人提供足够的信息,以便快速重现这个问题——最好是一个能够现场演示的Demo。