Preview3D
获取

什么是 .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。

相关页面

资料来源

你有没有一个来自 SketchUp 或 Google Earth 的旧 .dae,在 Mac 上无法完整打开?请写信到 apps@xfanta.com,告诉我它的来源。

在 Preview3D 中打开

在 Mac、iPad、iPhone 和 Vision Pro 上打开 STEP、3MF、STL、G-code、BGCODE 等格式。一次购买,无需账户,无需联网。

App Store 上的 Preview3D