As one of the first companies to build 3D commerce software, we’ve seen it all. We draw on our years of experience to explain 3D file formats and 3D commerce basics with tangible examples and clear explanations.
In this articlee
- Resources for working with 3D files
- Proprietary vs. open-source file formats
- 3D file format features
- How to choose a 3D file format
The Most Popular 3D File Formats for 3D Commerce
The number of 3D file formats continues to grow as 3D commerce matures. Six key file formats that tend to get used the most:
- USDZ Files: Created by Apple and Pixar and launched in 2018, USDZ is a closed and proprietary file format designed exclusively for AR. You can use the format with popular Apple programs such as AR Quick Look. Recently, the companies announced an update that allows developers to import Photoshop and Dimension-created objects into AR environments for Apple iPhones and iPads. Learn more about how to use this format and see examples, by reading Everything You Need to Know About USDZ Files.
- OBJ Files: An OBJ file (.obj) contains information about the geometry of 3D objects. Developers use the file format for exchanging information and in CAD and 3D printing applications. OBJ files can support unlimited colors, and one file can define multiple objects. The current version is 3.0. The objects in an OBJ file are defined by polygon faces and normals, curves, texture maps, and surfaces. OBJ is a vector file, which makes the defined objects scalable. Learn more about how to use OBJ files.
- FBXFiles: An FBX (.fbx) file is a format used to exchange 3D geometry and animation data. You can use different programs to open, edit, and export high-fidelity 2D and 3D files. FBX files are used in film, game, and Augmented Reality and Virtual Reality (AR/VR) development. FBX files store all the data for complete animation scenes. This data includes bones, meshes, lighting, camera, and geometry. Read Everything You Need to Know About Using FBX Files to learn more about this format.
- glTFand glTF 2.0 Files: GL Transmission Format (glTF) is an open-source and royalty-free 3D file that supports static models, animation, and moving scenes. Developers use glTF in native web applications, AR, VR, games, and 3D advertising. glTF 2.0 was a file format update that included Physically Based Rendering (PBR) and speed improvements. Learn more about the gITF and gITF file formats.
- GLBFiles: GLB is a 3D file format that’s used in VR, AR, games, and web applications because it supports motion and animation. Another advantage of the format is its small size and fast load times. GLB files are a binary version of glTF with JSON. A single file contains supporting data such as textures, shaders, and geometry/animation. Read our GLB file format guide to learn more.
In 2015, the Khronos Group developed the GLB and glTF formats. They saw a need for formats that developers could open and edit in many graphics and 3D apps. Version 2.0 of the specification (released in 2017), added Physically Based Rendering (PBR), which allows shadows and light to appear more realistic and coding updates for speed and improvements in animation.
Other 3D file formats exist for specialized uses such as 3D printing, movies, video games, architecture, and educational applications. Those include:
- CAD files
- BLEND files
- STL files
- COLLADA files
- 3DS files
- IGES files
- STEP files
- VRML/X3D files
For more in-depth information on media-specific file types, here are some helpful resources:
- 3D file formats on Edutechwiki
- 3D Models for 3D Printing on 3dhubs.com
- CAD file formats on Wikipedia
- VR Video Formats on 360labs.net
- BLEND/Blender files on Stackexchange
Ultimate List of 3D File Graphics
Every 3D file graphics format you’ve ever heard of (and some that you haven’t) compiled a complete list (as far as we know) of every 3D graphics file format under the sun. Some of these 3D model format types allow for building models in real-time, and others are for baked or non-real-time 3D rendering.
- 3DMF – QuickDraw 3D Metafile(.3dmf)
- 3DM – OpenNURBS Initiative3D Model (used by Rhinoceros 3D) (.3dm)
- 3MF – Microsoft3D Manufacturing Format (.3mf)
- 3DS– legacy 3D Studio Model (.3ds)
- ABC – Alembic (computer graphics)
- AC – AC3DModel (.ac)
- AMF– Additive Manufacturing File Format
- AN8 – Anim8orModel (.an8)
- AOI – Art of Illusion Model (.aoi)
- ASM – PTC Creoassembly (.asm)
- B3D – Blitz3DModel (.b3d)
- BLEND – Blender(.blend)
- BLOCK – Blenderencrypted blend files (.block)
- BMD3 – NintendoGameCube first-party J3D proprietary model format (.bmd)
- BDL4 – NintendoGameCube and Wii first-party J3D proprietary model format (2002, 2006–2010) (.bdl)
- BRRES – NintendoWii first-party proprietary model format 2010+ (.brres)
- BFRES – NintendoWii U and later Switch first-party proprietary model format
- C4D – Cinema 4D(.c4d)
- Cal3D – Cal3D(.cal3d)
- CCP4– X-ray crystallography voxels (electron density)
- CFL – Compressed File Library(.cfl)
- COB – Caligari Object(.cob)
- CORE3D – Coreona 3D Coreona 3D Virtual File (.core3d)
- CTM – OpenCTM(.ctm)
- DAE – COLLADA(.dae)
- DFF – RenderWarebinary stream, commonly used by Grand Theft Auto III-era games as well as other RenderWare titles
- DPM – deepMesh(.dpm)
- DTS – Torque Game Engine(.dts)
- EGG – Panda3DEngine
- FACT – Electric Image(.fac)
- FBX – Autodesk FBX(.fbx)
- G – BRL-CADgeometry (.g)
- GLB – a binary form of glTFrequired to load Facebook 3D Posts (.glb)
- GLM – Ghoul Mesh (.glm)
- glTF– the JSON standard developed by Khronos Group (.gltf)
- IOB – Imagine (3D modeling software)(.iob)
- JAS – Cheetah 3Dfile (.jas)
- LWO – LightwaveObject (.lwo)
- LWS – LightwaveScene (.lws)
- LXF – LEGO Digital DesignerModel file (.lxf)
- LXO – Luxology Modo (software)file (.lxo)
- MA – Autodesk MayaASCII File (.ma)
- MAX – Autodesk 3D Studio Maxfile (.max)
- MB – Autodesk MayaBinary File (.mb)
- MD2– Quake 2 model format (.md2)
- MD3– Quake 3 model format (.md3)
- MD5– Doom 3 model format (.md5)
- MDX – Blizzard Entertainment‘s own model format (.mdx)
- MESH – New York University(.m)
- MESH – Meshwork Model (.mesh)
- MM3D – Misfit Model 3d (.mm3d)
- MPO – Multi-Picture Object – This JPEGstandard is used for 3D images, as with the Nintendo 3DS
- MRC– voxels in cryo-electron microscopy
- NIF – GamebryoNetImmerse File (.nif)
- OBJ – Wavefront .obj file(.obj)
- OFF – OFF Object file format(.off)
- OGEX – Open Game Engine Exchange(OpenGEX) format (.ogex)
- PLY– Polygon File Format / Stanford Triangle Format (.ply)
- PRC – Adobe PRC(embedded in PDF files)
- PRT – PTC Creopart (.prt)
- POV – POV-Raydocument (.pov)
- R3D – Realsoft 3D(Real-3D) (.r3d)
- RWX – RenderWareObject (.rwx)
- SIA – Nevercenter Silo Object (.sia)
- SIB – Nevercenter Silo Object (.sib)
- SKP – Google Sketchupfile (.skp)
- SLDASM – SolidWorksAssembly Document (.sldasm)
- SLDPRT – SolidWorksPart Document (.sldprt)
- SMD – ValveStudiomdl Data format (.smd)
- U3D – Universal 3Dformat (.u3d)
- USD – Universal Scene Description(.usd)
- USDA – Universal Scene Description, Human-readable text format(.usda)
- USDC – Universal Scene Description, Binary format(.usdc)
- USDZ – Universal Scene Description Zip(.usdz)
- VIM – Reviztovisual information model format (.vimproj)
- VRML97 – VRMLVirtual Reality modeling language (.wrl)
- VUE – Vuescene file (.vue)
- VWX – Vectorworks (.vwx)
- WINGS – Wings3D(.wings)
- W3D – Westwood 3D Model (.w3d)
- X – DirectX 3D Model(.x)
- X3D – Extensible 3D(.x3d)
- Z3D – Zmodeler(.z3d)
Did we miss one? Contact us to let us know.
Proprietary vs. Open Source 3D File Formats
It is important to understand the difference between proprietary and open source 3D file formats. Depending on the audience for the content, proprietary 3D file formats can be an excellent investment. However, relying on proprietary formats can increase costs and limit content portability to other platforms
Proprietary 3D File Formats
Proprietary formats are patented or designated as trade secrets and created by companies to force specific hardware or software purchases and limit interoperability. Translating proprietary formats into open-source formats is difficult as the data encoding format is often locked to prevent reverse engineering. For example, USDZ is a proprietary 3D file format designed to work exclusively with iOS devices.
Open Source 3D File Formats
Before closed operating systems such as iOS and Windows existed, there was a tradition in software development to contribute innovations in software engineering to the public domain. Today, open-source 3D file formats are designed for data and file portability across devices and applications.
The Khronos Group is the standards organization behind many 3D file formats. GLB and glTF are examples of open-source 3D file formats that have been developed and managed by the Khronos Group. An open-source format exists in the public domain and can be used for both proprietary and free and open-source software by following a standard licensing agreement. Typically, there is no charge or licensing fee for using open-source software standards.
Features in a 3D File Format
A file format is a standard method for encoding and compressing digital information so a computer can read it. File formats can be licensed or free, proprietary or open-source. Examples of non-3D file formats that most people are familiar with include PDF, TXT, JPG, PNG, HTML, XLS, and DOC files.
In 3D art, shapes are distinct from their coverings. In this section, we will unpack what goes into a typical 3D file and how various 3D file formats handle that.
Demystifying 3D File Formats
|3D File Feature||3D File Format Handling|
The geometry is the shape of a 3D model. Any 3D model is a collection of points, lines, and planes. In 3D art, these are referred to as vertices, edges, and polygons (or faces).
|Encoding Geometry of the 3D Model||3D geometries are composed of thousands upon thousands of triangles or polygonal meshes. A 3D file format compresses this information and makes it machine-readable.|
|Textures and Materials||Textures and materials are applied to 3D geometries to add color, character, and enhance the realness of 3D objects. 3D artists use this to create feelings of smoothness, roughness, sheen, shadows, and reflectivity.||Storing Appearance of the 3D Model||You can store textures and materials individually or assemble them into bundles. They are typically stored as bitmaps (images) or procedural textures (mathematical formulas) and can be referenced within a 3D file format or stored separately for external reference.|
|Scene||The scene of a 3D model provides information about light sources, cameras, and other relevant objects.||Saving Scene Information||
A 3D file format can reference or store information about the scene in which a 3D object appears. This data includes the encoding of light source information such as location and intensity.
|Rigging for Animation||When 3D models are animated, the objects require rigging. Rigging is the process of adding controls to a digital model that allows it to move naturally. For instance, in order for a 3D model of a person to move like it would in reality, the rigging artist has to provide deformers indicating where a leg is supposed to bend, how a head rotates, and how each of these movements results in other nuanced movements.||Encoding Animations||Not all file formats support rigging for animation. Animators use various software to get the desired result. The most popular software applications for animation are Maya and 3Ds Max—each has its own native file formats. To use Maya and 3Ds Max files with programs like Zbrush, you can use OBJ as a transitional file format.|
How to Pick the Right Format for Your 3D Project
The best way to figure out what 3D file type will best suit your project is to spend a few minutes thinking about the end product and the portability required.
What’s your use case?
How do you intend to use your 3D models? There are purpose-specific file types for specific purposes. For instance, consider the difference between 3D printing and AR apps. 3ds and STL are file formats used for 3D printing and rapid prototyping but won’t work for AR applications. A better choice for an AR app would be glTF for Android or USDZ for iOS.
What is the final product and output that you expect?
Consider the pros and cons of open-source vs. proprietary formats. For instance, unless you only want to publish on iOS, avoid starting with USDZ. It is easier to translate a game art pipeline from glTF or GLB into USDZ than the other way around. Be sure to research the requirements of your final publishing platform (e.g., iOS, Android, Google Visual Search, gaming platforms, VR headsets) before committing to a file type.
What software are you using?
Verify the file type you choose is readable and writeable with the software you’re using. Some formats are more widely accessible than others. Starting with accessible or open-source formats will make it easier to edit, read, and get the most out of your 3D models over time.
3D Modeling for 3D Commerce
Creating 3D files is the first step in making 3D images accessible. Having a tool that will allow you to make your complete product catalog available in 3D, export assets to most file formats, and deliver customer applications is essential. Marxent’s 3D Cloud is capable of storing assets generically, providing access to team members when and where they need them. Use the solution to produce consumable format types for many other platforms and search engines, including USDZ, glTF, OBJ, and Google 3D Visual Search.
Marxent’s 3D modeling services are designed to deliver reusable, rapidly rendering 3D assets for enterprise-level ecommerce applications. Our commitment is to ensure that your content investment delivers realism, consistency, and speed, while also optimizing for scale and asset reuse. With nearly a decade of experience in the creation of reusable 3D content for commerce, Marxent is the 3D modeling services provider of choice for major omnichannel furniture and home improvement retailers and manufacturers.
Learn more about our 3D modeling services for product visualization.