UserData

  1. 定义 UserData

    cpp 复制代码
    UCLASS()
    class ADVMOD_API UStaticMeshUserData : public UAssetUserData
    {
    	GENERATED_BODY()
    	
    public:
    	UPROPERTY(EditAnywhere)
    	FString MeshPath;
    };
  2. 新建,添加

    cpp 复制代码
    UStaticMeshUserData* StaticMeshUserData = StaticMesh->GetAssetUserData<UStaticMeshUserData>();
    if (!StaticMeshUserData)
    {
    	StaticMeshUserData = NewObject<UStaticMeshUserData>(StaticMesh, UStaticMeshUserData::StaticClass(), NAME_None, RF_Transactional);
    	StaticMeshUserData->MeshPath = StaticMesh->GetPathName();
    	StaticMeshUserData->PostEditChange();
    
    	StaticMesh->AddAssetUserData(StaticMeshUserData);
    	StaticMesh->PostEditChange();
    	StaticMesh->MarkPackageDirty();
    }
  3. 获取

    cpp 复制代码
    UAssetUserData* Data = Obj->GetAssetUserDataOfClass(UStaticMeshUserData::StaticClass());
    UStaticMeshUserData* UserData = Cast<UStaticMeshUserData>(Data);
    // 或
    UStaticMeshUserData* StaticMeshUserData = StaticMesh->GetAssetUserData<UStaticMeshUserData>();
相关推荐
xlp666hub3 小时前
Leetcode第五题:用C++解决盛最多水的容器问题
linux·c++·leetcode
得物技术4 小时前
搜索 C++ 引擎回归能力建设:从自测到工程化准出|得物技术
c++·后端·测试
xlp666hub1 天前
Leetcode 第三题:用C++解决最长连续序列
c++·leetcode
会员源码网1 天前
构造函数抛出异常:C++对象部分初始化的陷阱与应对策略
c++
xlp666hub1 天前
Leetcode第二题:用 C++ 解决字母异位词分组
c++·leetcode
不想写代码的星星1 天前
static 关键字:从 C 到 C++,一篇文章彻底搞懂它的“七十二变”
c++
xlp666hub2 天前
Leetcode第一题:用C++解决两数之和问题
c++·leetcode
不想写代码的星星2 天前
C++继承、组合、聚合:选错了是屎山,选对了是神器
c++
不想写代码的星星3 天前
std::function 详解:用法、原理与现代 C++ 最佳实践
c++
樱木Plus5 天前
深拷贝(Deep Copy)和浅拷贝(Shallow Copy)
c++