UE4小技巧(一)让C++动态生成的物体带有细节面板

引擎版本为4.24
最近在写一个功能的时候,遇到了一个问题,就是使用C++来动态生成一个USphereComponent组件,当使用蓝图来继承该C++类时,却发现该USphereComponent组件,没有细节面板(无法修改其中的东西)。
生成的代码如下:

CollisionComp = CreateDefaultSubobject<USphereComponent>(TEXT("SphereComp"));

方法一
只需要在下面添加一句

RootComponent = CollisionComp;

将该组件改为根组件即可。
该解决方法在UE4 第一人称射击C++项目中的Projectile类中找到的。
方法二
直接将该USphereComponent组件通过BlueprintReadWrite声明为蓝图可读写即可。

public:
	UPROPERTY(VisibleDefaultsOnly,BlueprintReadWrite,Category = Projectile)
	class USphereComponent* CollisionComp;

建议使用第二种。

猜你喜欢

转载自blog.csdn.net/qq_41487299/article/details/120275071#comments_22751133
今日推荐