GithubHelp home page GithubHelp logo

gmatrixgames / jsonasasset Goto Github PK

View Code? Open in Web Editor NEW
107.0 7.0 19.0 25.81 MB

Unreal Engine plugin to allow conversion between JSON to Unreal Engine.

License: MIT License

C# 6.45% C++ 93.46% Batchfile 0.01% C 0.08%
fmodel json unreal unrealengine

jsonasasset's Introduction

Welcome!

My name is Garrett or GMatrixGames. I develop things for games I enjoy. I'm also working on a game 🤫. Currently working on a Bachelors Degree in Game Development!

Personal Projects

  • Fortnite Central: Developed and run by me
    • Description » Fortnite Central is your one stop discord for all things Fortnite related! Fully custom bot developed by me that you can also invite to your own server!
  • PokéStop: Developed and run by me
    • Description » PokéStop is your one stop for all Pokémon related product updates from reputable shops.
  • JsonAsAsset: Created by Tector, maintained by me
    • Description » JsonAsAsset (JAA) is an Unreal Engine plugin to create assets from the JSON output of game files from FModel (See Below).

Projects I've contributed to

  • FModel: Created by Asval
    • Description » Software for exploring UE4-5 games' files
  • CUE4Parse: Created by Fabian
    • Description » A C# Parser for Unreal Engine 4-5 packages & assets
  • FortniteAPI.io: Run by Quentin
    • Description » FortniteAPI.io is one of the leading Fortnite-based APIs
  • More soon!

Github Stats

An image of @gmatrixgames's Holopin badges, which is a link to view their full Holopin profile

If you like any of my projects and would like to support me, click below!

Buy Me a Coffee at ko-fi.com

My social links

Twitter Youtube

Fortnite Central Discord The Matrix Nation Discord

jsonasasset's People

Contributors

gmatrixgames avatar onganker avatar tectors avatar zyloxmods avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

jsonasasset's Issues

Unspecified Function after importing material/function

Some materials fail to compile when you import them because material functions inside other functions don't get imported. It works great if you import the missing functions manually but it would be really nice to be able to import one file and have everything imported.

[REQUEST] Niagara Assets

[Niagara Asset Request]

I think Niagara support for JAA would be really useful so it'd be cool to see it added if possible

Fatal error that crashes UE5.1.1

Fatal error: [File:D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp] [Line: 920] Attempted to create a package with name containing double slashes. PackageName: //Character_SubsurfaceProfile

UnrealEditor_CoreUObject
UnrealEditor_JsonAsAsset!FAssetUtilities::CreateAssetPackage() [P:\JsonAsAsset\JsonAsAsset\HostProject\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Utilities\AssetUtilities.cpp:79]
UnrealEditor_JsonAsAsset!IImporter::ImportReference() [P:\JsonAsAsset\JsonAsAsset\HostProject\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Importers\Importer.cpp:128]
UnrealEditor_JsonAsAsset!FJsonAsAssetModule::PluginButtonClicked() [P:\JsonAsAsset\JsonAsAsset\HostProject\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\JsonAsAsset.cpp:73]
UnrealEditor_JsonAsAsset!TBaseRawMethodDelegateInstance<0,FJsonAsAssetModule,void __cdecl(void),FDefaultDelegateUserPolicy>::ExecuteIfSafe() [P:\Wahm\UE_5.1\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:475]
UnrealEditor_Slate

This happens when you try importing Character_SubsurfaceProfile.json

[REQUEST] Update to UE 5.3 ver

Hi, is it possible to request a plugin update or a possible explanation on how to compile the relevant version yourself?
Trying to use version 1.2.1 related to UE 5.1
the project fails to compile the build for the plugin. Thanks.

[Major] Compilation fails at MaterialInstanceConstantImporter

When compiling the JsonAsAsset module on a fresh install of both UE 5.1, and 5.2, the following errors are produced at compilation-time (AnimationBaseImporter Deprecation notice is on 5.2 only):

1>D:\UnrealProjects\Grove\Plugins\Importers\JsonAsAsset\JsonAsAsset\Source\JsonAsAsset\Private\Importers\AnimationBaseImporter.cpp(122): warning C4996: 'UAnimSequence::RequestSyncAnimRecompression': RequestSyncAnimRecompression has been deprecated use CacheDerivedData instead Please update your code to the new API before upgrading to the next release, otherwise your project will no longer compile.
1>D:\UnrealProjects\Grove\Plugins\Importers\JsonAsAsset\JsonAsAsset\Source\JsonAsAsset\Private\Importers\MaterialInstanceConstantImporter.cpp(143): error C2248: 'UMaterialInstance::StaticParametersRuntime': cannot access private member declared in class 'UMaterialInstance'
1>C:\Program Files\Epic Games\UE_5.2\Engine\Source\Runtime\Engine\Classes\Materials\MaterialInstance.h(677): note: see declaration of 'UMaterialInstance::StaticParametersRuntime'
1>C:\Program Files\Epic Games\UE_5.2\Engine\Source\Runtime\Engine\Classes\Materials\MaterialInstance.h(525): note: see declaration of 'UMaterialInstance'

Using UE 5.2

I get these errors when trying to import:

Screenshot 2023-11-19 113403

Is it because you dont include blueprints in your plugin?
And if not can you please provide an updated version?

Nevermind, found out on Discord that it's not possible with this plugin
so time to close this.

'JsonAsAsset' is Incompatible

I downloaded UE5.2 to test "JsonAsAsset 1.2.0 (5.2)" but I am getting this error.
The 'JsonAsAsset' plugin was designed for build 5.1.0. Attempt to load it anyway?
at the end I am getting
LuxorGame could not be compiled. Try rebuilding from source manually.

[BUG] Crashes upon import in 5.2

Using Robocop: Rogue City demo as a base and current master branch

  1. I've dumped and compiled SDK successfully.
  2. JsonAsAsset setup successfully
  3. Attempt to import DT with bunch of references crashes editor.

Crash log:

Assertion failed: (Index >= 0) & (Index < ArrayNum) [File:D:\Legendary\Games\UE_5.2\Engine\Source\Runtime\Core\Public\Containers\Array.h] [Line: 752] Array index out of bounds: 0 from an array of size 0

UnrealEditor_JsonAsAsset!FAssetUtilities::ConstructAsset<UObject>() [D:\Unreal\5.2\Game\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Utilities\AssetUtilities.cpp:220]
UnrealEditor_JsonAsAsset!IImporter::DownloadWrapper<UObject>() [D:\Unreal\5.2\Game\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Importers\Importer.cpp:76]
UnrealEditor_JsonAsAsset!IImporter::LoadObject<UObject>() [D:\Unreal\5.2\Game\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Importers\Importer.cpp:160]
UnrealEditor_JsonAsAsset!UPropertySerializer::DeserializePropertyValueInner() [D:\Unreal\5.2\Game\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Utilities\PropertyUtilities.cpp:210]
UnrealEditor_JsonAsAsset!UPropertySerializer::DeserializePropertyValue() [D:\Unreal\5.2\Game\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Utilities\PropertyUtilities.cpp:121]
UnrealEditor_JsonAsAsset!FFallbackStructSerializer::Deserialize() [D:\Unreal\5.2\Game\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Utilities\PropertyUtilities.cpp:69]
UnrealEditor_JsonAsAsset!UPropertySerializer::DeserializeStruct() [D:\Unreal\5.2\Game\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Utilities\PropertyUtilities.cpp:493]
UnrealEditor_JsonAsAsset!UDataTableImporter::ImportData() [D:\Unreal\5.2\Game\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Importers\DataTableImporter.cpp:43]
UnrealEditor_JsonAsAsset!IImporter::HandleExports() [D:\Unreal\5.2\Game\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Importers\Importer.cpp:318]
UnrealEditor_JsonAsAsset!IImporter::ImportReference() [D:\Unreal\5.2\Game\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Importers\Importer.cpp:218]
UnrealEditor_JsonAsAsset!FJsonAsAssetModule::PluginButtonClicked() [D:\Unreal\5.2\Game\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\JsonAsAsset.cpp:268]
UnrealEditor_JsonAsAsset!TBaseRawMethodDelegateInstance<0,FJsonAsAssetModule,void __cdecl(void),FDefaultDelegateUserPolicy>::ExecuteIfSafe() [D:\Legendary\Games\UE_5.2\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:424]
UnrealEditor_Slate

JASAPI log:

[CORE] Initializing globals, and provider..
[Provider] Found config folder: D:\Unreal\5.2\Game\Config
[UserSettings] Mappings: D:/Unreal/_Mappings_/RoboCop-Win64-Shipping.usmap
[UserSettings] Archive Directory: D:/Steam/steamapps/common/Robocop Rogue City Demo/Game/Content/Paks
[UserSettings] Unreal Versioning: GAME_UE5_2
[CORE] Initialized provider successfully
[CORE] Running API...
[CREDITS] Created by Tector and GMatrix, thank you for using! :)
info: Microsoft.Hosting.Lifetime[14]
      Now listening on: http://localhost:1500
info: Microsoft.Hosting.Lifetime[0]
      Application started. Press Ctrl+C to shut down.
info: Microsoft.Hosting.Lifetime[0]
      Hosting environment: Production
info: Microsoft.Hosting.Lifetime[0]
      Content root path: D:\Legendary\Games\UE_5.2\Engine\Binaries\Win64\
info: Microsoft.AspNetCore.Hosting.Diagnostics[1]
      Request starting HTTP/1.1 GET http://localhost:1500/api/v1/export?raw=true&path=/Game/Blueprints/Abstract/Curves/HUDShootSmall_Curve.HUDShootSmall_Curve - 0
warn: Microsoft.AspNetCore.HttpsPolicy.HttpsRedirectionMiddleware[3]
      Failed to determine the https port for redirect.
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[0]
      Executing endpoint 'JsonAsAssetAPI.Controllers.JsonAsAssetController.Get (JsonAsAssetAPI)'
info: Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker[3]
      Route matched with {action = "Get", controller = "JsonAsAsset"}. Executing controller action with signature Microsoft.AspNetCore.Mvc.ActionResult Get(Boolean, System.String) on controller JsonAsAssetAPI.Controllers.JsonAsAssetController (JsonAsAssetAPI).
info: Microsoft.AspNetCore.Mvc.Infrastructure.ObjectResultExecutor[1]
      Executing ConflictObjectResult, writing value of type '<>f__AnonymousType3`2[[System.Boolean, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.String, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]'.
info: Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker[2]
      Executed action JsonAsAssetAPI.Controllers.JsonAsAssetController.Get (JsonAsAssetAPI) in 264.8247ms
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[1]
      Executed endpoint 'JsonAsAssetAPI.Controllers.JsonAsAssetController.Get (JsonAsAssetAPI)'
info: Microsoft.AspNetCore.Hosting.Diagnostics[2]
      Request finished HTTP/1.1 GET http://localhost:1500/api/v1/export?raw=true&path=/Game/Blueprints/Abstract/Curves/HUDShootSmall_Curve.HUDShootSmall_Curve - 0 - 409 - application/json;+charset=utf-8 306.8027ms

Missing MaterialEditor.h so cannot compile from Main branch

Severity Code Description Project File Line Suppression State
Error C1083 Cannot open include file: 'MaterialEditor/Private/MaterialEditor.h': No such file or directory \Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Importers\MaterialImporter.cpp 15

UE5.1 Crash when import Materials or Material Functions

I am ues:-
JsonAsAsset plugin #v1.1
Fortnite Game
FModel v 4.4.2.0

The is the Crash reporter

((
LoginId:a3e4056e436aa4e743fcf2b3f9e9100d
EpicAccountId:e64b8477bdd24982a008d7cb56393667

Assertion failed: InShadingModel < MSM_NUM [File:D:\build++UE5\Sync\Engine\Source\Runtime\Engine\Classes\Engine\EngineTypes.h] [Line: 638]

UnrealEditor_Engine
UnrealEditor_JsonAsAsset!UMaterialImporter::ImportData() [E:\00-Unreal Engine Project\2030\Uiana_511\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Importers\MaterialImporter.cpp:94]
UnrealEditor_JsonAsAsset!IImporter::ImportReference() [E:\00-Unreal Engine Project\2030\Uiana_511\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Importers\Importer.cpp:151]
UnrealEditor_JsonAsAsset!FJsonAsAssetModule::PluginButtonClicked() [E:\00-Unreal Engine Project\2030\Uiana_511\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\JsonAsAsset.cpp:63]
UnrealEditor_JsonAsAsset!TBaseRawMethodDelegateInstance<0,FJsonAsAssetModule,void __cdecl(void),FDefaultDelegateUserPolicy>::ExecuteIfSafe() [C:\Program Files\Epic Games\UE_5.2\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:424]
UnrealEditor_Slate
UnrealEditor_Slate
UnrealEditor_Slate
UnrealEditor_Slate
UnrealEditor_Slate
UnrealEditor_Slate
UnrealEditor_Slate
UnrealEditor_Slate
UnrealEditor_Slate
UnrealEditor_Slate
UnrealEditor_ApplicationCore
UnrealEditor_ApplicationCore
UnrealEditor_ApplicationCore
UnrealEditor_ApplicationCore
user32
user32
UnrealEditor_ApplicationCore
UnrealEditor
UnrealEditor
UnrealEditor
UnrealEditor
UnrealEditor
UnrealEditor
kernel32
ntdll
)))

jsonAsAsset_P

jsonAsAsset

Unreal 5.3.2 unable to compile project with this pluging

3>[1/4] Compile [x64] Module.JsonAsAsset.cpp 3>C:\UnrealProjects\JAssetJson\Plugins\JsonAsAsset\Source\JsonAsAsset\Public\Importers\Importer.h(13): warning C5038: data member 'IImporter::GObjectSerializer' will be initialized after data member 'IImporter::PropertySerializer' 3>C:\UnrealProjects\JAssetJson\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Importers\AnimationBaseImporter.cpp(44): warning C4996: 'USkeleton::AddSmartNameAndModify': Please use AddCurveMetaData. Please update your code to the new API before upgrading to the next release, otherwise your project will no longer compile. 3>C:\UnrealProjects\JAssetJson\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Importers\AnimationBaseImporter.cpp(51): warning C4996: 'USkeleton::GetSmartNameByUID': This function is no longer used Please update your code to the new API before upgrading to the next release, otherwise your project will no longer compile. 3>C:\UnrealProjects\JAssetJson\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Importers\AnimationBaseImporter.cpp(123): warning C4996: 'USkeleton::AddSmartNameAndModify': Please use AddCurveMetaData. Please update your code to the new API before upgrading to the next release, otherwise your project will no longer compile. 3>C:\UnrealProjects\JAssetJson\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Importers\AnimationBaseImporter.cpp(128): warning C4996: 'FAnimationCurveIdentifier::FAnimationCurveIdentifier': Please use the constructor that takes an FName Please update your code to the new API before upgrading to the next release, otherwise your project will no longer compile. 3>C:\UnrealProjects\JAssetJson\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Importers\AnimationBaseImporter.cpp(152): warning C4996: 'UAnimSequence::RequestSyncAnimRecompression': RequestSyncAnimRecompression has been deprecated use CacheDerivedData instead Please update your code to the new API before upgrading to the next release, otherwise your project will no longer compile. 3>C:\UnrealProjects\JAssetJson\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Importers\DataTableImporter.cpp(25): warning C4996: ANY_PACKAGE has been deprecated. Either use full path name of objects (including classes) or provide a valid Outer for *FindObject* functions Please update your code to the new API before upgrading to the next release, otherwise your project will no longer compile. 3>C:\UnrealProjects\JAssetJson\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Importers\Importer.cpp(264): warning C4996: ANY_PACKAGE has been deprecated. Either use full path name of objects (including classes) or provide a valid Outer for *FindObject* functions Please update your code to the new API before upgrading to the next release, otherwise your project will no longer compile. 3>C:\UnrealProjects\JAssetJson\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Importers\MaterialImporter.cpp(15): fatal error C1083: Cannot open include file: 'MaterialEditor/Private/MaterialEditor.h': No such file or directory 3>Total time in Parallel executor: 4.61 seconds

[MAJOR] Material Importing causes error to happen

Assertion failed: TextureReferenceIndex != INDEX_NONE [File:D:\build\++UE5\Sync\Engine\Source\Runtime\Engine\Private\Materials\HLSLMaterialTranslator.cpp] [Line: 6794] 
Material expression called Compiler->TextureParameter() without implementing UMaterialExpression::GetReferencedTexture properly
UnrealEditor.exe has triggered a breakpoint.

image

Error happens due to the texture object not being recognized somehow when the material is created

Error when importing Materials

If needed, this is my json file (https://www.mediafire.com/file/prlvur4q5h57rwi/M_Cube_Purple_Dudebro.json/file)
Trying to import the .o file results in an error. Importing the normal json (the link above) has the following in the crash report:

Fatal error: [File:D:\build++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp] [Line: 920] Attempted to create a package with name containing double slashes. PackageName: //M_Cube_Purple_Dudebro

UnrealEditor_CoreUObject
UnrealEditor_JsonAsAsset!FAssetUtilities::CreateAssetPackage() [P:\JsonAsAsset\JsonAsAsset\HostProject\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Utilities\AssetUtilities.cpp:79]
UnrealEditor_JsonAsAsset!IImporter::ImportReference() [P:\JsonAsAsset\JsonAsAsset\HostProject\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\Importers\Importer.cpp:128]
UnrealEditor_JsonAsAsset!FJsonAsAssetModule::PluginButtonClicked() [P:\JsonAsAsset\JsonAsAsset\HostProject\Plugins\JsonAsAsset\Source\JsonAsAsset\Private\JsonAsAsset.cpp:73]
UnrealEditor_JsonAsAsset!TBaseRawMethodDelegateInstance<0,FJsonAsAssetModule,void __cdecl(void),FDefaultDelegateUserPolicy>::ExecuteIfSafe() [P:\Wahm\UE_5.1\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:475]

I also have a image of my settings.
image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.