Files
DS-Asset_Export_to_JSON/AssetExportSettings.h
jinilkim 3d9d6cc664 Add Asset Export to JSON feature for LLM combat balance analysis
Features:
- Export DataTable, Blueprint, AnimMontage, CurveTable to JSON
- INI-based configuration via UDeveloperSettings
- Comprehensive Blueprint EventGraph extraction
- Enhanced AnimMontage with CustomProperties from Notifies
- Project Settings integration (Edit -> Project Settings -> Plugins)
- Tools menu integration (Tools -> WorldStalker -> Export Assets to JSON)

Files added:
- AssetExportSettings.h/cpp - UDeveloperSettings configuration class
- AssetExporterToJSON.h/cpp - Core export implementation
- README.md - Comprehensive feature documentation
- MERGE_INSTRUCTIONS.md - Integration guide for existing files

Unreal Engine 5.5.4 compatible
2025-10-22 15:14:50 +09:00

79 lines
1.9 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "Engine/DeveloperSettings.h"
#include "AssetExportSettings.generated.h"
/**
* Settings for Asset Export to JSON feature
* Configure export paths in Project Settings -> Plugins -> Asset Export
*/
UCLASS(config=Editor, defaultconfig, meta=(DisplayName="Asset Export to JSON"))
class WORLDSTALKEREDITOR_API UAssetExportSettings : public UDeveloperSettings
{
GENERATED_BODY()
public:
UAssetExportSettings();
/**
* Folder paths to export assets from
* Paths are relative to /Game/ (e.g., "Blueprints/Enemy", "DataTables")
* Add or remove paths using the array controls below
*/
UPROPERTY(config, EditAnywhere, Category = "Export Paths", meta=(
ContentDir,
RelativePath,
LongPackageName
))
TArray<FDirectoryPath> ExportFolderPaths;
/**
* Output directory for exported JSON files
* Default: Content/Exports
*/
UPROPERTY(config, EditAnywhere, Category = "Export Settings", meta=(RelativePath))
FDirectoryPath OutputDirectory;
/**
* Create timestamped subfolder for each export
* Recommended to keep export history
*/
UPROPERTY(config, EditAnywhere, Category = "Export Settings")
bool bCreateTimestampedFolder;
/**
* Export DataTable assets
*/
UPROPERTY(config, EditAnywhere, Category = "Asset Types")
bool bExportDataTables;
/**
* Export Blueprint assets
*/
UPROPERTY(config, EditAnywhere, Category = "Asset Types")
bool bExportBlueprints;
/**
* Export AnimMontage assets
*/
UPROPERTY(config, EditAnywhere, Category = "Asset Types")
bool bExportAnimMontages;
/**
* Export CurveTable assets
*/
UPROPERTY(config, EditAnywhere, Category = "Asset Types")
bool bExportCurveTables;
// UDeveloperSettings interface
virtual FName GetCategoryName() const override;
virtual FText GetSectionText() const override;
#if WITH_EDITOR
virtual FText GetSectionDescription() const override;
#endif
};