728x90

2019/12/20 2

[C++로 개발하는 언리얼] 3장. 메모리 관리와 스마트 포인터

. 3장. 메모리 관리와 스마트 포인터 NewObject 사용, 스마트 포인터 (TSharedPtr, TWeakPtr, TUniquePtr ) TUniquePtr 을 사용해 객체 추적하기. ​ UObject에서 파생되지 않은 C++클래스의 경우 TSharedPtr / TWeakPtr 참조 ㅣ카운트 참조 체크. ​ 관리되지 않는 메모리 new/delete malloc = 메모리 할당 new = 메모리 할당 + 생성자 호출 ​ UAction* action = NewObject( GetTransientPackage(), UAction::StaticClass() ); ​ 구동 원리 UAction::StaticClass() 는 객체의 기본 UClass* 가져옴. GetTransientPackage() 는 게임의 ..

Unreal 엔진 2019.12.20

[C++로 개발하는 언리얼] 2장. 클래스 생성하기

. 2장. 클래스 생성하기 UE4 객체들은 참조 횟수 및 메모리 관리 대상, C++ 키워드 new를 사용한 직접 메모리 할당은 안 됨. 대신, UObject 파생된 것들은 ConstructObject 함수로 인스턴스화. C++ 클래스(UClass*)에서 파생된 Blueprint를 필요로함. 단순히 블루프린트를 가리키는 포인터. ​ UCLASS 내, 블루프린트에서 참조하려면... TSubclassOf UClassOfPlayer; // Display any UClass ​ FSoftObjectPath, StaticLoadObject 리소스 로드는 하드코딩. 비권장. ​ UE4는 실제로 클래스 인스턴스를 내부적으로 생성하므로 인스턴스화할 UCLASS 복사본을 만들기 위해서는 특별한 팩토리 함수를 호출해야 함...

Unreal 엔진 2019.12.20
728x90
반응형