-
UE4 4.16 Error Log / Fix / FStreamableManager카테고리 없음 2017. 7. 19. 00:42
언리얼 엔진 4.16 버전에서 비동기 애셋 로딩을 하기 위해서 FStreamableManager 를 사용해서 로드를 해와야했음.
FStreamableManager 를 GameInstance 에 변수로 선언함.
StreamableManager.h 도 cpp 에 추가함.
빨간 줄은 안가지만 어째서인지 GameInstance 에서 FStreamableManager 변수 선언한 곳에서 계속 에러가 남.
UPROPERTY() 를 안 쓰면 FStreamableManager 로 선언된 변수 AssetLoader 를 알 수 없는 재정의 지정자라고 함.
UPROPERTY() 를 쓰면 타입이 맞지 않다고 UCLASS(), USTRUCT(), UENUM() 중에 쓰라고 함.
전부 에러.
FStreamableManager 가 struct 이기 때문에 USTRUCT() 를 써주는게 맞는거 같지만,
USTRUCT() 를 쓰면 'struct' is not allowed here 라고 에러를 띄워줌.
그래서 구글링을 해봄.
GameSingletonClass 를 지정해주라고 해서, 프로젝트 세팅에서 내가 사용하는 GameInstance 로 설정해줌.
그러나. 안됨. 똑같은 에러남.
4.16 버전에서 도대체 어떻게 FStreamableManager 를 사용해서 동기/비동기 로딩을 해야할지 모르겠음.
누가 알면 제발 좀 알려줬으면!!!!!!!!!!!!!!!!!!!!!!!!
나중에 픽스되면 해결법 써야지..
-------------------------------- 해결 -------------------------------------
FStreamableManager 를 굳이 선언하지 않고,
UAssetManager 의 헤더를 사용하고자 하는 오브젝트의 cpp에 추가하고,
UAssetManager::GetStreamableManager() 를 호출
댓글