UE4中用ConstructorHelpers静态加载资源,生成时出现错误:
C2664 “void ConstructorHelpers::ValidateObject(UObject *,const FString &,const TCHAR *)”: 无法将参数 1 从“T *”转换为“UObject *”
static ConstructorHelpers::FObjectFinder<UPaperSprite> SpriteFinder(TEXT("PaperSprite'/Game/2DSideScroller/Sprites/PrototypingSprite.PrototypingSprite'"));
if (SpriteFinder.Succeeded())
{
Sprite->SetSprite(SpriteFinder.Object);
}
解决方法: 除了Conponent的头文件还要添加asset的头文件
#include "CoreMinimal.h"
#include "GameFramework/Actor.h"
#include "PaperSpriteComponent.h"
#include "PaperSprite.h" //添加后正常生成
#include "Side_ItemActor.generated.h"