File Formats
Introduction
Different file formats carry different types of data. Here's what you need to know when working with 3D models for visual investigation and analysis. Selecting the correct 3D file format is important to ensure that our reconstructions are verifiable, shareable, and compatible with various viewing platforms or analysis software.
Compatibility
Ensure your models can be opened by others. Learn which formats are the "diplomatic translators" of the 3D world.
Data Types
Not all formats are created equal. Know which ones support animation, textures, rigging, and which are geometry-only.
Archival
Choose the right format for long-term preservation to ensure your work remains accessible in the future.
Quick Reference
| Format | Geometry | Textures/Materials | Animation | Rigging | File Size | Common Issues |
|---|---|---|---|---|---|---|
| .blend | ✓ | ✓ | ✓ | ✓ | Large | Only opens in Blender |
| FBX | ✓ | ✓ | ✓ | ✓ | Large | Version compatibility |
| glTF/GLB | ✓ | ✓ | ✓ | ✓ | Small-Medium | Newer format, less universal |
| PLY | Mesh/Points | Vertex Color | ✗ | ✗ | Large | Mesh vs. Gaussian Splat confusion |
| SOG | Splat Cloud | ✓ (Baked) | ✗ | ✗ | Very Small | Visual only; not editable geometry |
| Alembic | ✓ | Limited | ✓ (baked) | ✗ | Medium-Large | No rig data |
| OBJ | ✓ | ✓ (external) | ✗ | ✗ | Small-Medium | Textures in separate .mtl file |
| STL | ✓ | ✗ | ✗ | ✗ | Small | No color/texture at all |
| SVG | 2D vectors | ✗ | ✗ | ✗ | Very small | Flat graphics only |
| BVH | ✗ | ✗ | ✓ (motion) | ✓ | Small | Just movement data |
.blend (Native Blender Files)
Your home base. Blend files preserve everything: every setting, every modifier, every material node, the entire scene setup. If you're working exclusively in Blender or need to save your work-in-progress, this is your format.
Use when: You need to save your work, share with other Blender users, or preserve complete editability.
Watch out for: Version differences. Blender 4.0 files might not open properly in Blender 2.9. Other software can't open these files at all.
FBX (Filmbox)
The "diplomatic translator" of 3D formats. FBX bundles geometry, textures, materials, animations, and rigging into one package. Import an FBX file and everything comes with it; no hunting for missing texture files.
Originally developed by Autodesk (Maya, 3ds Max), it's become the de facto standard for moving complex 3D data between different software packages.
Use when: Sharing models with people using different 3D software, sending models to game engines, or when you need everything in one file.
Watch out for: Large file sizes. Complex models can balloon to hundreds of megabytes. FBX also has multiple versions (2020, 2019, etc.), and not all software supports all versions. When exporting, match the FBX version to what your recipient's software can handle.
glTF/GLB (GL Transmission Format)
Built for the modern web and real-time rendering. These files stay lean while preserving quality, making them ideal for 3D viewers that run in browsers or apps where loading speed matters.
GLB is the binary version (single file), while glTF can split into multiple files. For most purposes, GLB is simpler.
Use when: Creating 3D visualizations for web browsers, working with AR applications, or importing into game engines like Unity or Unreal.
Watch out for: It's a relatively newer format (2017), so older software might not support it. Some complex material setups may not translate perfectly.
Alembic (ABC)
Think of Alembic as a "baked animation" format. It captures how geometry moves frame-by-frame without preserving the underlying rig or controls. This makes files cleaner and more focused.
Originally created for visual effects pipelines at Sony and Industrial Light & Magic, it's designed to pass completed animation work between teams who don't need to see how the puppet strings work.
Use when: You've finalized an animation and need to share just the movement, or when working with simulation data (cloth, fluids) that you want to keep but don't need to re-simulate.
Watch out for: You can't adjust the animation without going back to the original rigged file. Materials may not transfer completely; Alembic focuses on geometry and motion.
OBJ (Wavefront Object)
The universal fallback. OBJ has been around since the 1980s and almost every 3D program can read it. It's simple and reliable for static geometry.
Textures and materials are stored in a companion .mtl file (material template library), which references separate image files. If you're sharing an OBJ, you need to send the whole folder.
Use when: You need maximum compatibility, sharing static models, or working with software that doesn't support newer formats.
Watch out for: Missing textures are the most common issue. Make sure the .mtl file and all texture images travel with the .obj file, and keep their relative file paths intact. No animation support; what you see is what you get.
STL (Stereolithography)
Pure geometry, nothing else. No colors, no textures, no materials. STL files describe shape as a mesh of triangles, optimized for machines that need to physically build or analyze the form.
Use when: Preparing models for 3D printing, CNC machining, or any situation where you're analyzing or fabricating the physical form rather than its appearance.
Watch out for: Everything appears as a single color in Blender. If you need to preserve surface details, you'll need to model them as actual geometry (bumps become actual bumps, not texture maps).
SVG (Scalable Vector Graphics)
Blender's Grease Pencil tool lets you draw in 2D or create flat illustrations. SVG exports these as vector graphics that stay crisp at any scale, useful for diagrams, annotations, or 2D reference materials.
Use when: Creating 2D diagrams, annotations for 3D models, technical illustrations, or when you need graphics that scale infinitely without pixelation.
Watch out for: These are completely flat. Rotate the camera and you'll see they have no depth. Think of them as digital drawings rather than 3D objects.
BVH (BioVision Hierarchy)
Motion capture data in its simplest form. BVH files contain skeletal movement recorded from real actors wearing motion capture suits. You get the skeleton and its animation, nothing else.
Use when: You have motion capture data to apply to your models, or when studying human/character movement patterns.
Watch out for: This is just the skeleton and movement. You'll need to retarget this motion data onto your own 3D character model. Scale and proportions often need adjustment.
SOG (Spatially Ordered Gaussians)
A newer format specifically for Gaussian Splatting. Unlike traditional formats that use polygons (triangles), SOG stores millions of tiny "splats" (Gaussians) that represent a 3D scan of a real-world environment.
Use when: You need to display hyper-realistic, photo-accurate 3D scans on the web or in real-time engines with minimal loading times. It is ideal for forensic scene capture where lighting and texture detail must be exact.
Watch out for: It is not "geometry" in the traditional sense. You cannot easily move a door or edit a wall in an SOG file like you can in a .blend file. It is a visual representation, not a structural one. USD / USDZ (Universal Scene Description)
Originally developed by Pixar, USD is designed for "collaborative" modeling. It allows multiple people to work on the same scene simultaneously by layering files on top of each other without overwriting the base data.
Use when: Working in professional pipelines (Nvidia Omniverse), creating AR content for iOS (USDZ), or building massive scenes where you want to "reference" files rather than copy-pasting them.
Watch out for: Complex hierarchy. USD files can be intimidatingly organized, and Blender’s USD support is still evolving—ensure you are using the latest version of Blender for the best compatibility.
PLY (Stanford Polygon File Format)
The "Standard of Scans." Developed at Stanford in the 90s, PLY was designed to store the massive amounts of data coming off 3D laser scanners. In recent years, it has seen a massive resurgence as the primary format for 3D Gaussian Splatting (3DGS).
Use when:
-
3D Scanning: You are importing raw data from a LiDAR scanner or photogrammetry software.
-
Gaussian Splatting: You are importing a "Master" splat file to edit in tools like SuperSplat or Blender.
-
Point Clouds: You need to work with millions of individual points that don't necessarily have "faces" or "triangles" yet.
Watch out for: * File Size: Because PLY files are often uncompressed and store data for every single vertex (including color, normals, and transparency), they can easily reach 1GB+ for a single room.
Vertex Colors vs. Textures: PLY usually doesn't use "Texture Images" (JPEGs/PNGs). Instead, the color is "painted" directly onto each point. If you decimate (simplify) the model, you lose color detail.
Dual Nature: A "Standard PLY" (mesh) and a "Gaussian PLY" (splat) look identical but behave differently. You need specific importers (like the 3DGS Blender Add-on) to read the Gaussian version correctly.
Summary
Choosing the right file format ensures your investigative models can be shared, verified, and archived effectively. Each format serves a specific purpose in the visual investigation workflow.
Key Takeaways:
- FBX is the industry standard for complex scenes with animation, cameras, and rigging
- OBJ provides universal compatibility for static geometry and long-term archival
- glTF/GLB is optimal for web-based visualization and modern asset delivery
- STL is limited to geometry-only (useful for 3D printing physical models)
- .blend preserves everything but requires Blender to open
- All formats are essentially containers for polygonal mesh data
Documentation for Methodology
Understanding file formats is only half the work. Documenting your data handling is what makes your investigation defensible and reproducible.
What to document when handling 3D Files
In Your Method Section
Describe the file formats used for import, processing, and export.
In Your Decision Log
Record the following when handling files:
- Source file format and version (e.g., FBX 2020)
- Any conversion steps performed (e.g., converted .MAX to .FBX)
- Export settings used for the final deliverable
Verification
Verify that the exported file retains the key data (dimensions, textures, animation) by re-importing it into a clean Blender scene or a third-party viewer.
Example Methodology Statement
"The source model was received in .OBJ format. It was imported into Blender 4.2 for analysis. The final reconstruction was exported as a binary .glTF (.glb) file to ensure portability and texture preservation for the web-based interactive report."
Further Resources:
- glTF Overview - The Khronos Group's modern 3D format