【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

猜你喜欢

转载自www.cnblogs.com/mu-ye/p/11855782.html