DarklightGames / io_scene_psk_psa

A Blender extension for importing and exporting Unreal PSK and PSA files
GNU General Public License v3.0
310 stars 20 forks source link
blender blender-addon blender-extension export import psa psk python unreal-engine

Blender GitHub release Build Extension

ko-fi

This Blender addon allows you to import and export meshes and animations to and from the PSK and PSA file formats used in many versions of the Unreal Engine.

This software is licensed under the GPLv3 license.

Compatibility

Blender Version Addon Version Long Term Support
4.1 latest TBD
4.0 6.2.1 TBD
3.4 - 3.6 5.0.6 ✅️ June 2025
2.93 - 3.3 4.3.0 ✅️ September 2024

Bug fixes will be issued for legacy addon versions that are under Blender's LTS maintenance period. Once the LTS period has ended, legacy addon versions will no longer be supported by the maintainers of this repository, although we will accept pull requests for bug fixes.

Features

Installation

  1. Download the zip file for the latest version from the releases page.
  2. Open Blender 4.0.0 or later.
  3. Navigate to the Blender Preferences (Edit > Preferences).
  4. Select the Add-ons tab.
  5. Click the Install... button.
  6. Select the .zip file that you downloaded earlier and click Install Add-on.
  7. Enable the newly added Import-Export: PSK/PSA Importer/Exporter addon.

Usage

Exporting a PSK

  1. Select the mesh objects you wish to export.
  2. Navigate to File > Export > Unreal PSK (.psk).
  3. Enter the file name and click Export.

Importing a PSK/PSKX

  1. Navigate to File > Import > Unreal PSK (.psk/.pskx).
  2. Select the PSK file you want to import and click Import.

Exporting a PSA

  1. Select the armature objects you wish to export.
  2. Navigate to File > Export > Unreal PSA (.psa).
  3. Enter the file name and click Export.

Importing a PSA

  1. Select an armature that you want import animations for.
  2. Navigate to File > Import > Unreal PSA (.psa).
  3. Select the PSA file you want to import.
  4. Select the sequences that you want to import and click Import.

Note that in order to see the imported actions applied to your armature, you must use the Dope Sheet or Nonlinear Animation editors.

FAQ

Why can't I see the animations imported from my PSA?

Simply importing an animation into the scene will not automatically apply the action to the armature. This is in part because a PSA can have multiple sequences imported from it, and also that it's generally bad form for importers to modify the scene when they don't need to.

The PSA importer creates Actions for each of the selected sequences in the PSA. These actions can be applied to your armature via the Action Editor or NLA Editor.

Why are the mesh normals not accurate when importing a PSK extracted from UE Viewer?

If preserving the mesh normals of models is important for your workflow, it is not recommended to export PSK files from UE Viewer. This is because UE Viewer makes no attempt to reconstruct the original smoothing groups. As a result, the normals of imported PSK files will be incorrect when imported into Blender and will need to be manually fixed.

As a workaround, it is recommended to export glTF meshes out of UE Viewer instead, since the glTF format has support for explicit normals and UE Viewer can correctly preserve the mesh normals on export. Note, however, that the imported glTF armature may have it's bones oriented incorrectly when imported into Blender. To mitigate this, you can combine the armature of PSK and the mesh of the glTF for best results.