3.8k 词
UE 提供了多种机制来控制资产的引用方式,进而控制其如何被加载到内存中: 硬引用:对象 A 引用了对象 B,当对象 A 被加载时,会导致对象 B 也自动加载到内存中。 软引用:对象 A 通过一种间接的机制来引用对象 B. 硬引用 只要对象被加载和实例化,它硬引用的所有资产也会被同步加载。 需要进行谨慎设计,避免加载过多资产导致内存占用暴涨。 直接属性引用 这是资产引用中最常见的一种情况,通过 UPROPERTY 宏暴露给编辑器。 // AStrategyBuilding Class UPROPERTY(EditDefaultsOnly, Category=Building) USoundCue* ConstructionStartStinger; 编辑器限制:该属性只能作为对象的默认属性的一部分进行设置。 工作流程:设计师会创建一个继承自 AStrategyBuilding 的新蓝图类,然后将他们想要的声音资产保存到该蓝图中。 内存行为:每当设计师创建的这个蓝图类被加载时,它在 UPROPERTY 中引用的声音资产也会自动被加载到内存中。 构造时引用 程序员明确直...