您现在的位置是:首页 >技术杂谈 >UE5中的UPROPERTY网站首页技术杂谈

UE5中的UPROPERTY

Massstera 2025-03-03 00:01:02
简介UE5中的UPROPERTY

记录学习

示例 1:可编辑的蓝图变量
  • 作用:在编辑器中和蓝图中均可修改 Health 值,归类到 "Character" 类别。


UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Character")
float Health = 100.0f;
示例 2:网络同步变量
UPROPERTY(ReplicatedUsing = OnRep_Score, Category = "Gameplay")
int32 Score = 0;

// 在类中定义回调函数
UFUNCTION()
void OnRep_Score();
  • 作用Score 会在网络同步时自动复制,变化时触发 OnRep_Score 函数。

示例 3:仅限默认值编辑
UPROPERTY(EditDefaultsOnly, Category = "Weapon")
TSubclassOf<AWeapon> DefaultWeaponClass;
  • 作用:仅在蓝图类的默认设置中可编辑武器类型,防止运行时修改。

特殊修饰符 (meta)

UPROPERTY(EditAnywhere, Category = "AI", meta = (ClampMin = 0.0, ClampMax = 1.0))
float Aggression = 0.5f;
  • 作用:在编辑器中为 Aggression 添加滑动条,限制输入范围为 [0.0, 1.0]

  • //完整语法
    UPROPERTY(
        EditDefaultsOnly,                      // 仅在默认对象中可编辑
        BlueprintReadOnly,                     // 蓝图只读
        Category = "Stats",                    // 归类到 "Stats" 分组
        meta = (
            ClampMin = 0,                      // 最小值为 0
            ClampMax = 100,                    // 最大值为 100
            Tooltip = "角色的初始生命值"        // 提示文本
        )
    )
    int32 InitialHealth = 100;

  • 官方文档Unreal Engine 5.0 Documentation | Unreal Engine 5.0 Documentation | Epic Developer Community

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。