Day3
制作引擎使用的属性
UPROPERTY()
class UPaperFlipbook* RedBird;
UPROPERTY(EditAnywhere,Category="SelfProprety|Number")
int32 Number;
UPROPERTY(VisibleAnywhere)
int32 Age;
UPROPERTY(BlueprintReadOnly)
int32 Leg;
UPROPERTY(BlueprintReadWrite)
bool IsToggle;
UPROPERTY(EditAnywhere,BlueprintReadOnly,Category="SelfProprety|Number")
int32 Number2;
UPROPERTY(VisibleAnywhere,BlueprintReadWrite,Category="SelfProprety|Number|T")
int32 Number3;
UPROPERTY(VisibleAnywhere,DisplayName="FirstNumber",Category="SelfProprety|Number")
int32 Number4;
UPROPERTY(EditAnywhere)
bool bToggle;
UPROPERTY(EditDefaultsOnly,meta=(EditCondition="bToggle"))
int32 Number5;
UPROPERTY(EditAnywhere,meta=(UIMin=0,UIMax=3))
int32 Number6;
UPROPERTY(EditAnywhere,meta=(UIMin=0,UIMax=3,ClampMin=-1,ClampMax=10))
int32 Number7;
UPROPERTY(EditAnywhere,EditFixedSize)
TArray<int32> NumberArray;
UPROPERTY(EditAnywhere)
TArray<int32> NumberArray1;
UPROPERTY(EditAnywhere,AdvancedDisplay)
int32 Number8;

制作节点
UFUNCTION(BlueprintCallable)
int32 TestFunc1(int32& N,bool& B,FString Name);
UFUNCTION(BlueprintCallable)
int32 TestFunc2(const int32& N,bool& B,FString Name);
UFUNCTION(BlueprintCallable,BlueprintImplementableEvent)
void TestFunc3();
UFUNCTION(BlueprintCallable,BlueprintNativeEvent)
void TestFunc4();

C++加载蓝图为默认角色
ConstructorHelpers::FClassFinder<AMyPawn> MyClassPath(TEXT("/Script/Engine.Blueprint'/Game/FlappyBird/Blueprint/BP_Pawn.BP_Pawn_C'"));
if(MyClassPath.Class)
{
DefaultPawnClass=MyClassPath.Class;
}
加载类为蓝图组件

C++类中作为成员变量使用
UPROPERTY(EditAnywhere)
class USpringArmComponent* ArmComponent;
UPROPERTY(EditAnywhere)
class UCameraComponent* MainCamera;

C++建插槽 , 蓝图选择
UPROPERTY(EditAnywhere)
class UPaperFlipbookComponent* RenderBirdComponent;
UPROPERTY(EditAnywhere)
class UPaperFlipbook* RedBirdFlipbook;
UPROPERTY(EditAnywhere)
class UPaperFlipbook* YellowBirdFlipbook;
UPROPERTY(EditAnywhere)
class UPaperFlipbook* BlueBirdFlipbook;

加载枚举
UENUM()
enum EBirdStateTest
{
EBS_Wait,
EBS_Fly,
EBS_Dead,
};
UENUM(BlueprintType)
enum EColor
{
EC_Wait UMETA(DisplayName="Wait"),
EC_Fly UMETA(DisplayName="Fly"),
EC_Dead
};
UENUM()
namespace EBirdStateSecondTest
{
enum Type
{
Wait,
Fly,
Dead
};
}
UENUM()
enum class EBirdState:uint8
{
Wait,
Fly,
Dead
};
USTRUCT(BlueprintType)
struct FUserInfo
{
GENERATED_BODY()
UPROPERTY(BlueprintReadWrite)
FString Name;
UPROPERTY(BlueprintReadWrite)
int32 Age;
};
UCLASS()
class FLAPPYBIRD_API ABirdPawn : public APawn
{ GENERATED_BODY()
public:
UPROPERTY(BlueprintReadWrite)
FUserInfo Info;
UPROPERTY(EditAnywhere)
TEnumAsByte<EColor> SetColor;
UPROPERTY(EditAnywhere)
TEnumAsByte<EBirdStateSecondTest::Type> SetBirdState1;
UPROPERTY(EditAnywhere)
EBirdState SetBirdState2;
}

Day4
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署