什么是 .dae 文件?COLLADA、丢失的纹理,以及如何在 Mac 上打开它
.dae 文件是一份 COLLADA 文档:用 XML 描述一个包含网格、材质、相机、灯光和动画的 3D 场景。它于 2004 年起源于 Sony,自 2005 年起由 Khronos Group 维护。游戏工具、SketchUp 和 Google Earth 多年来一直使用它,但现在 glTF 正在取代它,Blender 5.0 也移除了对它的内置支持。
概览
- 扩展名
- .dae
- 类型
- 3D 场景
- 创建者
- Sony, Khronos Group
- 始于
- 2004
- 标准
- ISO/PAS 17506:2012
- macOS 自身(不装应用)
- 部分支持——见下文
信息核对于 2026年11月4日
可以阅读的 XML
COLLADA 是可读的文本。下面是我让 Apple 的 SceneKit 保存一个八面体时,文件的开头:
<?xml version="1.0" encoding="UTF-8"?>
<COLLADA xmlns="http://www.collada.org/2005/11/COLLADASchema" version="1.4.1">
<asset>
<contributor>
<authoring_tool>SceneKit Collada Exporter v1.0</authoring_tool>
</contributor>
<created>2026-11-04T15:57:14Z</created>
<modified>2026-11-04T15:57:14Z</modified>
<unit meter="1.000000"/>
<up_axis>Y_UP</up_axis>
</asset><asset> 部分包含生成文件的程序、创建和修改日期,最重要的是单位和朝上的轴。随后是材质、几何和图片的库,以及一个把它们组合在一起的场景。几何被写成一长串数字,例如 <float_array count="18">0 0 10 10 0 0 …</float_array>。
单位和朝上的轴
每个文件都会说明一个单位等于多少米(<unit meter="…"/>),如果什么都没说,就按米处理。规范甚至用一个虚构的、等于 5556 米的“nautical_league”来举例说明。朝上的轴(<up_axis>)可以是 Y、Z 或 X,默认是 Y。
在上面的文件中,SceneKit 写入了 meter="1.000000"——米——尽管这个八面体所来自的 OBJ 根本没有单位。一个会读取单位的程序会把它显示为 20 米高。所以打开后请检查尺寸。
为什么它到手时没有纹理
纹理不在 .dae 文件里,而是作为图片放在它旁边。文件在 <library_images> 中的 <init_from> 元素里通过路径指向它们。在 SketchUp、Maya、Google Earth 和游戏论坛上反复出现的三种纹理丢失原因:
- .dae 没有带上它的图片文件夹。Apple 的预览指南明确说,不要把 .dae 从它的文件夹中拿出来。
- 路径是绝对路径,例如
file:///C:/Users/…,在另一台电脑上指向不存在的位置。 - 图片名称对不上
<init_from>中写的名称。
用文本编辑器打开 .dae,搜索 <init_from>:你会清楚地看到文件需要哪些图片,以及去哪里找。
SketchUp 和 Google Earth:藏在 .kmz 里的 .dae
SketchUp 通过 File → Export → 3D Model 导出 COLLADA 1.4。Google Earth 在 .kmz 包中使用 COLLADA 模型。.kmz 是一个 ZIP,所以把它重命名为 .zip 并解压,就能在里面找到 .dae 及其纹理。来自 Google Earth 的模型打开时可能朝向不对,因为各个地球浏览器读取 COLLADA 的方式都略有不同。
COLLADA 正在淡出
Khronos 自己把 COLLADA 描述为一种在程序之间交换的格式,而不是用于交付的格式。交付则交给 glTF,而 glTF 正是 COLLADA 工作组自己在 2013 年宣布的。Blender 在 2024 年把 COLLADA 移为旧版(legacy)状态,并在 2025 年 11 月的 5.0 版中将其移除;Blender 4.5 LTS 是无需插件就能打开 .dae 的最后一个版本。而 Mac 用来读取 DAE 的 SceneKit,自 WWDC 2025 起在 Apple 处于维护模式。在 macOS 27.0.1 上它仍然能读取——我核实过。
如果你手上有旧的 .dae 文件,趁还有东西能打开它们,把它们转换为 glTF/GLB。
COLLADA 从何而来
COLLADA 起源于 Sony Computer Entertainment,目的是让工作室能够在不同工具之间转移 PlayStation 3 的内容。第一版于 2004 年发布,2005 年 7 月,Khronos 接纳它为开放标准。最普及的版本是 2008 年的 1.4.1。同年的 1.5 版增加了精确的 B-rep 几何、运动学和打包的 .zae 文件,并于 2012 年作为 ISO/PAS 17506 发布。2025 年 11 月,Khronos 发布了修正版 1.5.1。你在许多 3D 查看器的示例中见过的那只橡皮鸭,就是 Sony 在 2006 年制作的一个 COLLADA 模型。
如何在 Mac 上打开 DAE
- 预览可以打开 .dae,不过根据 Apple 的指南,在 macOS 27 上它对 .dae 提供的功能比对 USD 少。它不会把 .dae 存储为 STL 或 OBJ 这样的打印格式。
- 快速查看应该能通过系统的 SceneKit 扩展显示它。我还没有用具体的文件试过。
- Blender 4.5 LTS 能打开 .dae 并将其存储为 glTF。更新的 Blender 只有借助插件才行。
- Preview3D,我的应用,在 Mac 上通过 SceneKit 打开 .dae,带上文件中的材质和灯光。模型信息显示尺寸和三角形数量,还有网格检查,并且可以把模型转换为 STL、OBJ 或 PLY——这是预览做不到的。
把 DAE 转换为 STL
在 Mac 上,Preview3D 通过 文件 → 导出模型为…(⌥⌘E)进行转换,不上传任何东西。纹理、材质、动画和绑定会被丢弃;STL 只携带形状。来自游戏的模型常常由分开的部件拼成,打印前需要修复;网格检查会显示孔洞和没有连在一起的边。还要注意单位:转换后请在切片软件中检查尺寸。
常见问题
什么是 .dae 文件?
一份 COLLADA 文档:用 XML 表示的 3D 场景,包含网格、材质、相机、灯光和动画。DAE 是 Digital Asset Exchange(数字资产交换)的缩写。
为什么我的 .dae 打开后没有纹理?
纹理是放在文件旁边的单独图片。它们要么丢了,要么带着另一台电脑上的绝对路径,要么名称不对。在文本编辑器中,<init_from> 会显示文件需要哪些图片。
Mac 不装其他应用能打开 .dae 吗?
能,预览可以打开它,但不会把它存储为打印格式。
Blender 5 打不开 .dae,怎么办?
使用 Blender 4.5 LTS(最后一个内置 COLLADA 支持的版本),或者使用插件。然后把文件存储为 glTF/GLB。
如何把 DAE 转换为 STL?
在 Mac 上,用 Preview3D 的“文件 → 导出模型为…”。然后检查网格,并在切片软件中检查尺寸。
DAE 和 glTF 哪个更好?
对于新模型,选 glTF。Khronos 自己也推荐用它代替 COLLADA,而且 Blender 5 已不再读取 COLLADA。
相关页面
- .gltf 和 .glb 文件——COLLADA 在交付模型方面的继任者
- .fbx 文件——用于整个场景的封闭格式
- .stl 文件——DAE 要转换成的打印格式
资料来源
- Khronos:COLLADA——用途,1.4.1、1.5.0 和 1.5.1 版
- COLLADA 1.4.1 规范——单位、朝上的轴、起源于 Sony
- Sony:COLLADA 成为 Khronos 开放标准(2005)
- Khronos:COLLADA 成为 ISO/PAS 17506
- Blender 5.0:移除内置 COLLADA 和 将其移为旧版状态
- Apple:预览中的 .dae 文件 和 预览中的 3D 文件
- SketchUp:导入和导出 COLLADA
- Google:KML 中的模型
你有没有一个来自 SketchUp 或 Google Earth 的旧 .dae,在 Mac 上无法完整打开?请写信到 apps@xfanta.com,告诉我它的来源。
在 Preview3D 中打开
在 Mac、iPad、iPhone 和 Vision Pro 上打开 STEP、3MF、STL、G-code、BGCODE 等格式。一次购买,无需账户,无需联网。
App Store 上的 Preview3D