-
Notifications
You must be signed in to change notification settings - Fork 11
Common Issues with Generated Assets
Buckminsterfullerene02 edited this page Sep 9, 2023
·
3 revisions
Once you have generated your assets, you or another user of your template will likely encounter a few issues. While hopefully many of these will be fixed at some point, it's worth to document them now.
Here's a collection of notes that have been written for various games that might help to provide some insight into the generation process & any problems you almost certainly will be having. I really hope that when you make your generations that you write down notes of problems you encounter/the pipeline that works for your game as there are always more issues to be found.
Modkit generated by Buckminsterfullerene
=========================================
U38 GENERATION
=========================================
Things to check:
- "/Enemies/HydraWeed/Assets/ANIM_HydraWeed_Heart_Damaged_Additive" fbx has valid ref pose when generating in editor
- These are all empty anims so make sure their JSONs aren't generated
"/WeaponsNTools/Drills/Animations/HeavyDual_Drill_L_OFF.uasset",
"/WeaponsNTools/Drills/Animations/HeavyDual_Drill_L_ON.uasset",
"/WeaponsNTools/Drills/Animations/HeavyDual_Drill_R_OFF.uasset",
"/WeaponsNTools/Drills/Animations/HeavyDual_Drill_R_ON.uasset",
"/WeaponsNTools/GatlingGun/Animation/ANIM_Weapon_Gatling_Fire",
"/GameElements/Objectives/Facility/Caretaker/Body/SK_Facility_CareTaker_Body_Anim",
- Name is too long - PSA can only support up to 64 characters, make sure JSON is not generated
"/GameElements/Objectives/Facility/DefenseTurret/Assets/ANIM_Force_Field_Turret_Forcefield_Turret_Root_ForceField_Turret_Compressed"
Figure out why many ABPs with an assigned skeleton crashes editor
Figure out why some BehaviourTree assets crash on opening but others don't - seems to be tied to whether or not they have a blackboard generated, but sometime not??
- "/Script/AnimationSharing.AnimationSharingSetup" is simple asset
- Why are these two anim montages empty?
FSD/Content/Enemies/Spider/Animation/ANIM_Spider_Spit_Tank
FSD/Content/Enemies/Spider/Animation/ANIM_Spider_TankBoss_Heavy_Fireball
- Blendspace1D cooked can be duplicate uncooked
- ParticleSystem cooked can be duplicate uncooked - see what happens if you generate JSON over it?
JSON that needs to be edited to add/edit skeleton manually (or copy from previous project):
- /Game/Character/Vanity2/Headwear/SK_Vanity_Headwear_HelmetCyclops01.json (it doesn't use one in-game, so make one for it first)
- /Game/Character/Vanity2/Headwear/SK_Vanity_Headwear_HelmetDwarfClassic02.json (3P_Dwarf_Rig_Skeleton)
- /Game/Character/Vanity2/Headwear/SK_Vanity_Headwear_HelmetDwarfClassic03.json (3P_Dwarf_Rig_Skeleton)
- /Game/Character/Vanity2/Headwear/SK_Vanity_Headwear_HelmetHardhatRadio.json (3P_Dwarf_Rig_Skeleton)
- /Game/WeaponsNTools/GrapplingGun/SK_Pistol_GrapplingGun_01 (SK_Pistol_GrapplingGun_01_Skeleton)
Before generating in editor:
1. Run fmodel mass export script
2. Copy 6 missing animations from previous project
3. Use blender script to mass convert actorX to fbx
Order to generate:
1. Cooked assets
2. Textures/Texture2D/TextureCube (can be done in CLI)
3. Materials (can be done in CLI)
4. Sound Cues
5. Everything else not in the rest of this list
6. Static Meshes
7. Skeletons
9. Physics Assets
10. Skeletal Meshes
11. Animation Sequences
12. Animation Montages
13. Animation Blueprints?
14. Blueprints
15. Data Assets
16. Make sure sound classes + sub mixes are connected
17. Copy in correct fonts
18. Any duplicate uncook assets
Modkit generated by Buckminsterfullerene
F:\AC Modding\UnrealPacker4.27\JSON\Assets/Game/Blueprints/BP_GameInstance.json
Figure out why:
- Meshes/Visual/SM_VisualBush
- _Assets/ZeroGravityPartOne/Meshes/Props/SM_Instrument_Panel_01
- _Assets/ZeroGravityPartOne/Meshes/Props/SM_Pipe_Padded
(and more) are not exporting (via UModel/FBX export)
So little audio that can just put cooked assets into github repo
Game/Meshes/Shapes/Shape_Cone (SM) even cooked causes crash - delete for now
Seems like only Sitting4 and GuyTyping are the two anim sequences that need to be dummied, rest seem to be fine as cooked
Some widgets don't compile due to "internal component error - <name of item> cannot be made because of /Script/<name> already exists" - seems to be to do with transient/instanced (for fucks sake) flags being wrong in headers again
In AssetTypeGenerator.cpp
bool UAssetTypeGenerator::IsDumbAsset()
{
if (GetClass()->GetName() == "AnimBlueprintGenerator"
|| GetClass()->GetName() == "BlendSpaceGenerator"
|| GetAssetName() == L"BP_CinematicScifiGuy"
//&& GetAssetName() == L"ScifiGuySkeleton"
&& bSkipAnim)
{
UE_LOG(LogAssetGenerator, Warning, TEXT("Skipping asset %s"), *GetAssetName().ToString());
return true;
}
return false;
}