Wiki
467 words
2 minutes
Unreal 的资源加载
Updated 2025-11-29
Unreal 的资源加载
如何获得Unreal资产路径?
可以在Content窗口中,找到对应资产,右键。选择拷贝Object路径。
随后在代码中就可以使用该路径。使用[w/unreal/fobjectfinder|FObjectFinder]来进行加载

如何加载蓝图类资源
使用[w/unreal/fclassfinder|FClassFinder] 对于蓝图类,在加载的时候,一定要在路径的最后添加_C。以区别于非蓝图类的资产。 使用 FClassFinder.Succeeded() 来判断是否加载完成。 通过 FClassFinder.Class 来获取
注意
只能在构造函数当中,使用以上两个结构体对资源进行加载。
同步加载

LoadObject
第一个参数可以指定加载上下文的范围,第二个参数为加载资源路径
异步加载
小对象加载
不管加载成功还是不成功,都会经过 Lambda 的Callback进行处理,这时候可以根据加载状况走不通的处理分支。
加载一些小的对象我们可以使用 StreamableManager 的方式进行加载
### 主要加载方式 PrimeAsset
对于大型的、正式的资源,通过PrimeAsset进行加载
类似于Unity当中的AssetBundle
PrimeAssetId
FPrimeAssetType:与Unity中Asset的Tag作用几乎一致 FName PrimeAssetName:游戏中资产的名称
在项目设置中,可以设置PrimeAssetType和对应的资产范围(文件、文件夹)
FSoftObjectPath
判断资源是否已经被加载
通过该函数判断该Asset是否已经在内存中,如果为真,说明已经加载过,没有必要往下执行了。
if(UAssetManager::Get().GetPrimaryAssetObject(DataAssetId)){ return;}DataAsset如何加载
DataAsset是跟Unity中的ScriptableObject是很像的。只要在数据中引用了游戏中的其他资产。在访问该DataAsset时,可以同时访问到引用到的资产。相当于一次性全部加载

Unreal 的资源加载
https://fuwari.vercel.app/wiki/unreal/资源加载/