Memory Budget

메모리 최적화는 참조 그래프를 줄이는 작업입니다

언리얼의 UObject는 GC가 관리하지만 강한 참조가 남아 있으면 에셋과 객체가 내려가지 않아 메모리 예산을 계속 잡아먹습니다.

관리 기준

필요한 동안만 강한 참조를 유지하고, 늦게 불러도 되는 에셋은 Soft Reference와 스트리밍 로딩으로 전환합니다.

UObject GC

UPROPERTY 강한 참조가 남아 있는 객체는 GC 대상이 아니므로 소유 관계를 명확히 합니다.

Weak Pointer

관찰만 하는 관계는 TWeakObjectPtr로 두고 사용 전 IsValid를 확인합니다.

Soft Reference

TSoftObjectPtr과 Asset Manager로 필요한 순간에 에셋을 로드하고 끝나면 해제합니다.

Memreport

memreport, obj list, Size Map으로 실제로 많이 차지하는 클래스와 에셋을 확인합니다.