【UE4】c++ 创建组件

        构造函数用构造函数的创建组件的接口,非构造函数用非构造函数的接口。

构造函数中

UStaticMeshComponent* MyComponent = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("MyComponent"));
MyComponent->SetupAttachment(RootComponent);

非构造函数

UStaticMeshComponent* MyComponent = NewObject<UStaticMeshComponent>(this, TEXT("MyComponent"));
MyComponent->RegisterComponent();
MyComponent->AttachToComponent(RootComponent, FAttachmentTransformRules::KeepRelativeTransform);

NOTE:

NewObject+Register的方法不能在构造函数中创建组件。

.h文件中不要声明MyComponent,如果声明的话,不要加class

 

转载需注明出处。

 

posted @ 2019-11-14 11:19  哲贤  阅读(3572)  评论(0编辑  收藏  举报