mirror of
https://github.com/EsotericSoftware/spine-runtimes.git
synced 2025-12-20 09:16:01 +08:00
[ue4] Fixed call order of SpineSkeletonImportFactory, asset file name must be set before setting raw data. Fixes issue with importing .json files. See #1291.
This commit is contained in:
parent
dd85819c50
commit
dcce71416f
@ -81,9 +81,9 @@ UObject* USpineSkeletonAssetFactory::FactoryCreateFile (UClass * InClass, UObjec
|
||||
if (!FFileHelper::LoadFileToArray(rawData, *Filename, 0)) {
|
||||
return nullptr;
|
||||
}
|
||||
asset->SetSkeletonDataFileName(FName(*Filename));
|
||||
asset->SetRawData(rawData);
|
||||
|
||||
asset->SetSkeletonDataFileName(FName(*Filename));
|
||||
const FString longPackagePath = FPackageName::GetLongPackagePath(asset->GetOutermost()->GetPathName());
|
||||
LoadAtlas(Filename, longPackagePath);
|
||||
return asset;
|
||||
|
||||
@ -155,9 +155,15 @@ void USpineSkeletonDataAsset::LoadInfo() {
|
||||
Skins.Empty();
|
||||
for (int i = 0; i < skeletonData->getSkins().size(); i++)
|
||||
Skins.Add(skeletonData->getSkins()[i]->getName().buffer());
|
||||
Slots.Empty();
|
||||
for (int i = 0; i < skeletonData->getSlots().size(); i++)
|
||||
Slots.Add(skeletonData->getSlots()[i]->getName().buffer());
|
||||
Animations.Empty();
|
||||
for (int i = 0; i < skeletonData->getAnimations().size(); i++)
|
||||
Animations.Add(skeletonData->getAnimations()[i]->getName().buffer());
|
||||
Events.Empty();
|
||||
for (int i = 0; i < skeletonData->getEvents().size(); i++)
|
||||
Events.Add(skeletonData->getEvents()[i]->getName().buffer());
|
||||
delete skeletonData;
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -82,6 +82,9 @@ public:
|
||||
|
||||
UPROPERTY(Transient, VisibleAnywhere)
|
||||
TArray<FString> Animations;
|
||||
|
||||
UPROPERTY(Transient, VisibleAnywhere)
|
||||
TArray<FString> Events;
|
||||
|
||||
protected:
|
||||
UPROPERTY()
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user