Cryengine-Converter
A c# program to convert Crytek files to Collada (XML) format
Latest Release: v2.0.0 - USD Export and Animation Support
## Cryengine Converter v2.0.0 — USD Export & Animation Support The biggest release yet. v2.0 reworks the conversion pipeline around **USD as the default output format** and adds full **skeletal animation** support across formats, plus broader game coverage including Star Citizen's `#ivo` binary format. ### Highlights - **USD is the new default output** (`.usda`) — imports natively into Blender with materials, skeletons, and animations intact. Also great for Houdini and other USD-aware tools. - **Animation support** — `.caf`, `.dba`, and `.cal` animation files. Multi-clip assets export as separate files for Blender's NLA editor. - **glTF / GLB** are first-class outputs alongside Collada — multi-material models, skinning, and animation. - **Star Citizen `#ivo` format** — support for current SC builds (4.5+). - **Wider game coverage** — Kingdom Come: Deliverance 1 & 2, ArcheAge (controller 0x827/0x828, CAL animation lists), Hunt: Showdown, Pandemic Express, and more. - **Texture pipeline** — combine split Star Citizen DDS textures (`-unsplittextures` / `-ut`); optional PNG/TIFF/TGA conversion for glTF. - **Multiple UV layers, vertex colors, and full skeletal rigs** all export correctly. ### Downloads - **`cgf-converter-setup-2.0.0.exe`** (recommended) — Windows installer. Per-user, no admin required, adds the tool to your `PATH`. - **`cgf-converter.exe`** — single self-contained Windows x64 executable; no .NET install required. - `cgf-converter.pdb` / `CgfConverter.pdb` — debug symbols (only needed for diagnosing crash reports). The installer and executable are **code-signed** (certificate by the [SignPath Foundation](https://signpath.org)). On a fresh release you may still see a Microsoft Defender SmartScreen prompt until the download builds reputation — click **More info → Run anyway** and confirm the publisher reads **SignPath Foundation**. See the [README](https://github.com/Markemp/Cryengine-Converter#installation) for full install and usage instructions. ### Getting started ``` cgf-converter <asset-file> -objectdir <path-to-extracted-game-data> ``` The single most important argument is `-objectdir` — point it at the root of your extracted game data so materials and textures resolve correctly. ### Reporting issues Found a bug? Please [open an issue](https://github.com/Markemp/Cryengine-Converter/issues) — including the exact command and a sample asset helps enormously.
View Release
Cryengine Converter
Cryengine Converter is a C# command-line tool that converts Cryengine game assets — .cgf, .cga, .chr, .skin, animation files — into portable 3D formats. It supports the major Cryengine variants, including traditional Cryengine games (MechWarrior Online, Crysis, Hunt: Showdown, Kingdom Come Deliverance, ArcheAge) and Star Citizen's proprietary #ivo binary format.
What's new in v2
- USD is the new default output format — Universal Scene Description (
.usda/.usdc). Blender imports it natively with materials, skeletons, and animations intact. - glTF and GLB are first-class outputs alongside Collada.
- Star Citizen
#ivoformat support — This app only supports the latest versions (currently 4.5+) as the game files change frequently while it's in ‘alpha’. - Animations — full support for
.caf,.dba, and.calanimation files. Multi-clip assets export as separate files for Blender's NLA editor. - Texture pipeline — DDS combine for split SC textures (
-unsplittextures, or-utfor short), optional conversion to PNG/TIFF/TGA for glTF. - Multiple UV layers, vertex colors, full skeletal rigs all export correctly.
Installation
Two options on the Releases page. Pick whichever fits.
Option A — Installer (recommended)
Download cgf-converter-setup-<version>.exe and run it. The wizard installs to %LocalAppData%\Programs\Cryengine Converter (per-user, no UAC) by default and adds the install directory to your PATH. Uninstall via Settings → Apps cleans up everything including the PATH entry.
Option B — Loose executable
Download cgf-converter.exe directly and drop it into a folder that's already on your PATH (e.g. D:\scripts\). It's a single self-contained Windows executable (~120 MB) — no .NET install required.
“Windows protected your PC” — SmartScreen warning
The installer is code-signed (certificate by the SignPath Foundation), but Microsoft Defender SmartScreen still shows an “unrecognized app” warning until enough people have installed a given release for it to build reputation. This is expected for a new open-source release and does not mean the download is unsafe — you can confirm the signature yourself in the next step.
To proceed, click More info:

Then verify the publisher reads SignPath Foundation and click Run anyway:

If you'd rather not see this at all, use Option B — the loose .exe still triggers SmartScreen on first run but you can also right-click it → Properties → Unblock before launching.
After install
Open a new terminal window — existing ones won't see the PATH change. We recommend Windows Terminal with a PowerShell tab for the best command-line experience. Verify with:
cgf-converter -usage
Silent install (CI / Docker / pipelines)
The installer is built with Inno Setup and supports the standard Inno silent-install switches:
# Silent, per-user, adds to PATH (recommended for CI runners)
cgf-converter-setup-2.0.0.exe /VERYSILENT /CURRENTUSER
# Silent, all users (requires elevation)
cgf-converter-setup-2.0.0.exe /VERYSILENT /ALLUSERS
# Silent, no PATH edit (when CI manages its own PATH)
cgf-converter-setup-2.0.0.exe /VERYSILENT /CURRENTUSER /TASKS=""
# Silent uninstall
& "$env:LOCALAPPDATA\Programs\Cryengine Converter\unins000.exe" /VERYSILENT
Useful additional switches:
| Switch | Effect |
|---|---|
/SILENT |
Progress bar only, no wizard dialogs |
/VERYSILENT |
No UI at all |
/SUPPRESSMSGBOXES |
Auto-accept any popup prompts (combine with /SILENT) |
/DIR="path" |
Override install directory |
/LOG="path" |
Write install log to file (useful for pipeline debugging) |
/? |
Show all available switches |
Inno Setup broadcasts the PATH change immediately, but the current process still has the old environment. In CI, this rarely matters because each step typically starts a fresh shell. If a single step needs to install and then run cgf-converter immediately, append the install dir to $env:Path manually:
.\cgf-converter-setup-2.0.0.exe /VERYSILENT /CURRENTUSER
$env:Path += ";$env:LOCALAPPDATA\Programs\Cryengine Converter"
cgf-converter -usage
Quick start
You'll need a Cryengine game with the .pak files extracted (use 7-Zip — right-click → “7-Zip → Extract Here”). After extracting, you'll have a directory tree with Objects/, Textures/, Materials/ at the top — we'll call this the data directory.
PS> cgf-converter <asset-file> -objectdir <path-to-data-directory>
Concrete example, converting an Adder mech body part from MechWarrior Online:
PS D:\depot\mwo\Objects\mechs\adder\body> cgf-converter adder_torso.cga -objectdir D:\depot\mwo
This produces adder_torso.usda next to the source file, ready to import into Blender via File → Import → Universal Scene Description.
The single most important argument is
-objectdir. Cryengine assets reference materials and textures using paths relative to the data directory. Without-objectdir, the converter can't find them and falls back to default materials. Pass it on every conversion.
Output formats
| Format | Flag | When to use |
|---|---|---|
| USD | -usd |
Default. Recommended for Blender. Materials, skeletons, animations. |
| glTF | -gltf |
Game engines (Unity, Unreal, Godot), web viewers. Folder of files. |
| GLB | -glb |
Same as glTF, single self-contained file with embedded textures. |
| Collada | -dae |
Maya / 3DS Max workflows, anything that won't take USD. |
| Wavefront | -obj |
Deprecated. No skinning, no animation, limited materials. |
Recommendation: start with USD. Switch to something else only if you hit a specific problem.
Common workflows
Convert all assets in a directory
PS> cgf-converter *.cga -objectdir D:\depot\mwo
Recursive conversion across a subtree
PS> Get-ChildItem -Recurse -Include *.cga,*.cgf,*.chr,*.skin |
ForEach-Object { cgf-converter $_.FullName -objectdir D:\depot\mwo }
Heads up: running this on the entire
Objectsfolder of a real Cryengine game will produce tens of gigabytes of output and take an hour or more. Pick the subdirectory you actually need.
Convert a skeletal asset with animations
PS> cgf-converter boar.chr -anim -objectdir D:\depot\KCD2
The -anim flag pulls in .chrparams, .dba, .caf, and .cal animation files. Multi-clip assets emit one USD file per animation, which can be loaded as separate actions in Blender's NLA editor.
Split textures - combining split DDS textures
Many modern CryEngine games ship their DDS textures split across multiple files (*.dds.0, *.dds.1, ...). Pass -unsplittextures (or -ut) to combine them before materials are written:
PS> cgf-converter AEGS_Avenger.cga -ut -objectdir D:\depot\SC4.6\Data
Full CLI reference
cgf-converter [-usage] | <.cgf file> [options]
Required-ish:
<input-file> .cgf, .cga, .chr, .skin, .anim, .dba (wildcards supported)
-objectdir <path> Path to the extracted game's data directory (highly recommended)
-mtl/-mat <file> Override material file resolution
Output formats:
-usd / -usda USD (default)
-dae Collada
-gltf glTF (text + .bin)
-glb glTF binary, single file with embedded textures
-obj Wavefront (deprecated, not supported)
Texture options:
-notex Don't include textures in output
-ut / -unsplittextures Combine split SC DDS files
-png / -tif / -tga Reference converted texture format (glTF text only)
-embedtextures Embed textures into glTF text output
Filtering:
-en / -excludenode <regex> Exclude matching nodes
-em / -excludemat <regex> Exclude meshes with matching materials
-es / -excludeshader <regex> Exclude meshes by shader name
Animation:
-anim / -animations Include .caf/.dba/.cal animation data
Other:
-out / -outdir <path> Write output to this directory (default: next to the source file)
-noconflict Append _out to output filenames
-pp / -preservepath Preserve directory hierarchy in output
-mt / -maxthreads <n> Limit thread count (0 = all cores)
-loglevel <level> verbose | debug | info | warn | error | critical | none
Run cgf-converter -usage for the always-current list.
Tutorial videos
A new v2 tutorial series is in production. The earlier 2017 series uses an older version of the tool (Collada-only, no animation) and shouldn't be used as a guide for v2 workflows — but the asset extraction and Blender setup parts are still relevant:
- Original Part 1: Converting CryEngine Files (2017)
- Original Part 2: Bulk Convert and Import Mechs / Prefabs (2017)
Reporting bugs and contributing
- File issues at github.com/Markemp/Cryengine-Converter/issues.
- Pull requests welcome — see CONTRIBUTING.md and DEVNOTES.md.
- Project structure and architecture are documented in CLAUDE.md.
Code Signing Policy
Free code signing provided by SignPath.io, certificate by SignPath Foundation.
| Role | Members |
|---|---|
| Approvers | Owners |
| Committers | Contributors |
Privacy policy: This program will not transfer any information to other networked systems unless specifically requested by the user or the person installing or operating it. See also the Heffay Presents Privacy Policy.
License
See the LICENSE file for license details.