ED06.Config|属性持久化
大约 3 分钟
温故
1️⃣ 用 AssetDefinitionDefault
注册我们的资产。
2️⃣ 用 ToolMenus
扩展编辑器的菜单和工具栏。
3️⃣ 用 FSlateStyleSet
自定义了一些图标。
属性持久化

Config

Config|类内方法
① 声明类时加上 config=XXX
UCLASS(Config=Game)
class UMyGameSettings : public UObject
{
GENERATED_BODY()
public:
UPROPERTY(Config, EditAnywhere, Category="Game")
int32 DifficultyLevel;
void ChangeSetting(int32 NewValue)
{
DifficultyLevel = NewValue;
SaveConfig(); // 自动写入到 Game.ini
}
};
② 默认保存位置
DefaultEditor.ini
DefaultEngine.ini
DefaultGame.ini
DefaultInput.ini
③自定义位置

Config|类内限制

Config|类外方法
DataAsset
UCLASS(BlueprintType)
class UMyGameConfig : public UObject
{
GENERATED_BODY()
public:
UPROPERTY(EditAnywhere, Category = "Game Settings")
float MaxHealth = 100.f;
};
MaxHealth = 200