DAE to OBJ Converter
Convert a Collada (.dae) file to OBJ right in your browser, with its materials and textures. A DAE file states its own unit (for example centimetres or inches) and which axis is up, and the converter uses both: by default the OBJ keeps the file’s unit and comes out Y-up, as most 3D apps expect, or you can choose metres, millimetres or inches and Z-up. Every part is placed where the file puts it (moves, turns, scales and 4 × 4 matrices are baked in). Materials go into an MTL file, and texture images you add with the DAE are copied into the ZIP; any the file names but you did not add are listed by name. Every OBJ is read back straight after it is written, and the page shows what it found. Nothing is uploaded.
100% private — everything runs in your browser. Everything runs in your browser; your DAE files are never uploaded.
File details
Size and direction
What goes in
Animation
Runs in your browser: your files are read on your device and never uploaded, and web addresses inside a model are not fetched. The 3D engine (three.js) loads from the jsDelivr CDN. You may use what you make here, including commercially, with no credit needed. The rights in your own models and textures stay as they were.
How to convert a DAE to OBJ
- Drop the .dae on the box together with its texture images (or open the folder), or click Try a sample.
- Check the units and up axis the page found in the file, the 3D view and the material table.
- Choose OBJ units and the up direction, and what goes in: materials and textures, normals, texture coordinates.
- Click Download OBJ + MTL + textures (.zip), or OBJ only.
What you can use it for
- Open a Collada model from an older 3D app or a 3D warehouse download in a tool that reads OBJ
- Turn a centimetre or inch Collada file into millimetres for 3D printing
- Fix a model that lies on its back because the file is Z-up
- Bring a Collada scene into a sculpting, UV or game tool as one OBJ
- Freeze an animated Collada model in one pose as a still mesh
- Check which textures a DAE file needs before you share it
What carries over from DAE to OBJ
| In the DAE | In the OBJ from this converter |
|---|---|
| Geometry (triangles, polygons, polylists) | Triangles, one OBJ object per part |
| Node transforms (translate, rotate, scale, matrix) | Baked into the vertex positions |
| Unit (<unit meter=…>) | Kept as the file’s unit by default, or converted to metres, centimetres, millimetres or inches |
| Up axis (Y_UP or Z_UP) | Written Y-up by default, or Z-up |
| Materials (Phong, Blinn, Lambert) | MTL: Kd, Ks, Ns, Ke, d, illum |
| Textures | Image files you add are copied into the ZIP and named in the MTL; missing ones are listed |
| Animations and skins | One pose is written (rest pose, or a frame you pick) |
| Cameras, lights, lines | Left out and listed in the notes |
Collada is an XML format for exchanging 3D assets (The National Archives lists it as “an open standard XML specification for 3D images and animations”). three.js, which reads the file here, turns Z-up files to Y-up and applies the file’s unit when it builds the scene; the converter then writes the numbers in the unit you choose.
Units and up axis: the sample crate
| OBJ units and up direction | A 20 × 20 × 40 cm crate (Z-up file) becomes |
|---|---|
| Same as the file (centimetres), Z-up as in the file | 20 × 20 × 40 cm |
| Same as the file (centimetres), Y-up (default) | 20 × 40 × 20 cm |
| Metres, Y-up | 0.2 × 0.4 × 0.2 m |
| Millimetres, Y-up | 200 × 400 × 200 mm |
| Inches, Y-up | 7.874 × 15.748 × 7.874 in |
The test crate is our own Collada file in centimetres (unit meter=“0.01”) with Z up, as many CAD and architecture exports are. Computed by the converter’s own writer.
How Collada materials become MTL
| Collada | In the MTL |
|---|---|
| diffuse colour / texture | Kd / map_Kd |
| specular | Ks |
| shininess | Ns |
| emission colour / texture | Ke / map_Ke |
| transparency | d |
| bump / normal texture | norm |
| lambert / phong, blinn | illum 1 / illum 2 |
| Material in our two-part test file | Written as | Lighting model |
|---|---|---|
| red | Kd 0.8 0.1 0.1 | illum 1 |
| blue | Kd 0.1 0.2 0.9, Ks 0.5 0.5 0.5, Ns 50 | illum 2 |
What our test files give
| Test file | What it checks | Triangles | OBJ objects | Materials | OBJ size | Read back the same |
|---|---|---|---|---|---|---|
| crate-cm-zup.dae | Crate in centimetres, Z up, wood texture (Phong) | 12 | 1 | 1 | 20 × 40 × 20 cm | Yes |
| two-parts.dae | Two parts: one moved, one placed by a 4 × 4 matrix (turned 90°); two materials (Lambert red, Phong blue) | 24 | 2 | 2 | 5.5 × 1 × 2 m | Yes |
Computed by the converter’s own writer from our own Collada 1.4.1 test files, read with the same three.js version the page uses. Every OBJ was read back with the same triangle count and size.
Next steps
Need a print file? OBJ to STL turns the OBJ into an STL, and 3MF to STL and STL to 3MF handle 3MF. Check a print model in the STL viewer, or open CAD files in the STEP Viewer.
Sources
Sources: The National Archives (PRONOM): COLLADA Digital Asset Exchange (DAE), fmt/1209; three.js 0.186.1 ColladaLoader source (Z-up assets turned to Y-up, unit scale applied); Library of Congress: Wavefront OBJ File Format; MTL material format (Paul Bourke’s copy of the Wavefront notes: Kd, Ks, Ns 0–1000, d, map_Kd, -imfchan, illum).
More free tools
Working with 3D models?
View, convert and make 3D files with free tools that run privately in your browser, with no sign-up and no watermark.
Frequently asked questions
Is this DAE to OBJ converter free?
Yes. There is no sign-up, no watermark and no limit on how many files you convert. The conversion runs in your browser, so your files never leave your device.
What is a DAE file?
A .dae file is a Collada document: an XML file that describes 3D models, materials, scenes and animations, made as an exchange format between 3D apps. Several 3D apps and model libraries offer it as an export or download format.
Will the OBJ be the right size?
Collada files say what one unit is (for example centimetres, with meter=“0.01”). By default the OBJ keeps those numbers, so a 40 cm part is 40 units. Choose metres, millimetres or inches to convert. OBJ files have no unit field, so set the same unit when you import the OBJ.
Why was my model lying on its back?
Collada files can be Z-up (common from CAD and architecture apps) while most apps that open OBJ expect Y-up. The converter reads the up axis from the file and writes Y-up by default; choose Z-up if the OBJ is going to a Z-up app.
Are textures kept?
Yes, when you add the image files together with the DAE (or open the folder). They are copied into the ZIP as they are and named in the MTL. If the DAE names an image you did not add, the page lists it by name and the MTL still points to it, so you can put it next to the OBJ later.
How are Collada materials turned into MTL?
Diffuse colour becomes Kd and a diffuse texture map_Kd, specular becomes Ks, shininess becomes Ns, emission becomes Ke and transparency becomes d. Colours are written as the numbers in the DAE file. Lambert materials get illum 1, Phong and Blinn illum 2.
What happens to animations?
OBJ stores one still shape, with no bones or keyframes. The converter writes the rest pose, or the first or last frame of an animation you pick under Animation.
Which Collada files can it read?
Collada files with triangles, polygons and polylists, as the three.js Collada reader handles them (our test files are Collada 1.4.1). Lines and points are left out and listed. A file with broken XML is refused with a message saying so.
Is my DAE file uploaded?
No. The Collada file and its textures are read and turned into OBJ by JavaScript in your browser, so they never leave your device. Only the 3D engine itself (three.js) is loaded from a public CDN. There is no sign-up and no watermark.