A user-friendly plugin for Unreal Engine that reads JSON files extracted from CUE4Parse (often FModel), and regenerates assets as they were from the game's files.
This project aims to streamline the porting and modding experience, making it easier to bring game assets into Unreal Engine.
[!WARNING] Please note that this plugin is intended solely for personal and educational use. Do not use it to create or distribute commercial products without obtaining the necessary licenses and permissions. It is important to respect intellectual property rights and only use assets that you are authorized to use. We do not assume any responsibility for the way the created content is used.
Extras:
Here are the supported asset types for JsonAsAsset:
Asset Category | Asset Types / Description |
---|---|
Curve Asset Types | CurveFloat, CurveTable, CurveVector, CurveLinearColor, CurveLinearColorAtlas |
Data Asset Types | DataAsset, SlateBrushAsset, SlateWidgetStyleAsset, AnimBoneCompressionSettings, AnimCurveCompressionSettings, UserDefinedEnum, UserDefinedStruct |
Table Types | CurveTable, DataTable, StringTable |
Materials | Material, MaterialFunction, MaterialInstanceConstant, MaterialParameterCollection, SubsurfaceProfile |
Sound Classes | Most/all sound classes are supported. SoundWave is downloaded by a Cloud Server. |
Animation Asset Types | PoseAsset, Skeleton, SkeletalMeshLODSettings, BlendSpace, BlendSpace1D, AimOffsetBlendSpace, AimOffsetBlendSpace1D |
Physics Asset Types | PhysicsAsset, PhysicalMaterial |
Sequencer Asset Types | CameraAnim |
Landscape Asset Types | LandscapeGrassType, FoliageType_InstancedStaticMesh, FoliageType_Actor |
Asset Category | Asset Types / Description |
---|---|
Animations | AnimSequence, AnimMontage [Animation Curves] |
Material/Niagara Data:
Unreal Engine games made below 4.12 (a guess) will have material data, but not niagara data, any games made above that version will most definitely not have any material data nor niagara data, and therefore the actual data will be stripped and cannot be imported. Unless you are using a User Generated Content editor, then it's possible material data and niagara data will be there.
NOTE: If your game uses custom C++ classes or structures, you need to define them before importing with JsonAsAsset. JsonAsAsset does not create C++ files for you. (create them manually from SDKs or automate them) See Unreal Engine Modding Projects for game-specific template projects.
Follow these steps to install JsonAsAsset:
Plugins
folder. If the folder doesn’t exist, create it in the root directory of your project.JsonAsAsset
and enable it.If you haven't already, install FModel and set it up correctly, then proceed with the setup.
The JSON format/file has to be from a program that fits the format of FModel's JSON export files:
FModel (Software for exploring Unreal Engine games)
<img align="right" width="315" height="190.4" src=https://github.com/user-attachments/assets/909e2db1-e0d9-4aae-9b8b-7190cf6718b3>
Open Plugin Settings:
Click on the JsonAsAsset dropdown, then select Open Plugin Settings.
Import Settings from FModel:
Locate Load External Configuration and press FModel Settings, your settings should be changed.
If not, copy your export directory from FModel.
That's the basic setup! Here's how to use JsonAsAsset.
Find a asset in FModel, and save it by right clicking and pressing Save Properties
. Locate the file on your computer and copy the location.
Press onto the JsonAsAsset button on your tool-bar, and a file import should pop-up. <img align="right" width="220" height="98" src=https://github.com/user-attachments/assets/514d7661-f2f6-4343-8c9c-ed875ddb5156>
Paste in the file's path, select the file and press open.
The asset will import, and bring you to the created asset in the content browser. (if the asset type is supported)
To bulk import assets and what they reference, you must set up a Cloud Server
!
A Cloud Server
is a server that hosts a Web API, allowing JsonAsAsset to communicate directly with the game files. JsonAsAsset will automate importing assets that assets reference. It supports all supported asset types except AnimSequence/AnimMontages. Use and setup a app that has a built-in cloud server.
The following apps can host a Cloud Server:
Please set your Export Directory to your actual "Output/Exports" directory
WRONG: T:/FModel/Output
RIGHT: T:/FModel/Output/Exports
This is a known issue in our code that we haven't fully resolved yet. While previous attempts to fix it have been unsuccessful, here’s a partial solution to reduce its occurrence:
JsonAsAsset is licensed under the MIT License, read more in the LICENSE file. The plugin also uses Detex and NVIDIA Texture Tools.
Thanks go to these wonderful people:
![]() Tector Developer | ![]() GMatrixGames Collaborator | ![]() Zylox Maintainer |
Nathan Felipe Help with SoundCue Code |