示例 3D 模型文件下载 — STL、OBJ、GLB、glTF、PLY、3MF、USDZ、FBX

10 种格式 · 43 个文件 · 直链下载 · 无广告 · 可自由使用

这里的每个模型都由我们自己的脚本根据参数化几何体生成——1,024、51,200 和 524,288 个三角形的环面结、UV 球、按毫米缩放的可打印支架——并直接按各格式的规范写出。没有改扩展名的文件,也没有转换来的下载,所以每个文件都货真价实,可以放心放进测试套件。

每个文件都列出了精确的三角形数和顶点数、单位、朝上轴、材质、动画和 SHA-256。glTF 和 GLB 文件以零错误、零警告通过 Khronos glTF Validator。发布前,每个文件都用所有支持该格式的独立读取器(three.js、Assimp 和 trimesh)重新导入并核对三角形数量;USDZ 文件则通过了 Apple usdchecker 的 ARKit 模式检查。

选择格式

需要能让程序出错的文件? 边界用例包中有 15 个刻意刁钻的文件——3D 模型:空的、损坏的和误导性的网格。

常见问题

应该优先支持哪种 3D 格式?

网页用 GLB:一个二进制文件就能装下几何体、PBR 材质、贴图和动画,three.js、Babylon.js、model-viewer 和大多数在线查看器都以它为核心。3D 打印用 STL 和 3MF。与老工具交换数据用 OBJ。如果 iPhone 和 iPad 用户需要在 AR 快速查看中打开模型,再加上 USDZ;只有需要接收游戏引擎或 Autodesk 工具导出的文件时才需要 FBX。

模型使用什么单位和朝向?

glTF、GLB、OBJ、PLY、OFF、DAE 和 USDZ 文件为 Y 轴朝上、单位为米,这是 glTF 的要求,也是大多数查看器的默认假设。STL 和 3MF 文件为 Z 轴朝上、单位为毫米,这是切片软件的默认假设,并且放置在 z = 0 上。FBX 为 Y 轴朝上、单位为厘米(其原生单位)。每个文件旁都标明了单位和朝上轴,因为模型显示得小了 1,000 倍或者侧躺着,是最常见的 3D 上传问题。

有没有用于负面测试的损坏 3D 文件?

有。边界用例包中有一个 3D 部分:零个三角形的 STL、退化网格和法线反向的网格、非流形网格、坐标值为一千万和百万分之一的模型、接近 float32 上限的数值、截断的 GLB、头部谎报三角形数量的 STL、扩展名为 .stl 的 GLB、头部以“solid”开头的二进制 STL,以及 Unicode 文件名。

为什么没有 Blender(.blend)、3ds Max 或 Maya 文件?

这些是应用程序的工程文件,而不是交换格式,只有应用程序本身才能正确写出,而我们无法在开放、可复现的流程中运行这些程序。这里提供的格式,正是实际流程中会从用户和导出工具那里收到的格式。

其他示例文件分类

发现问题,或者觉得哪里可以更好?每条消息我们都会阅读,并尽快修复。