voidGetPrivateStaticClassBody(constTCHAR*PackageName,constTCHAR*Name,UClass*&ReturnClass,void(*RegisterNativeFunc)(),//省略其他参数UClass::ClassConstructorTypeInClassConstructor,//省略其他参数){#if WITH_HOT_RELOADif(GIsHotReload){check(!bIsDynamic);UPackage*Package=FindPackage(NULL,PackageName);if(Pack...
ULyraInventoryItemDefinition:物品定义,UCLASS(Blueprintable, Const, Abstract)。内部变量有TArray<TObjectPtr<ULyraInventoryItemFragment>> Fragments,也就是说一个ItemDefinition会有多个ItemFragment。另外就是用于显示名称的FText DisplayName。 ULyraInventoryItemFragment:物品片段,UCLASS(DefaultToInstanced, EditInline...
template<classT>T*NewObject(UObject*Outer,constUClass*Class,FName Name,EObjectFlags Flags,UObject*Template,boolbCopyTransientsFromClassDefaults,FObjectInstancingGraph*InInstanceGraph,UPackage*ExternalPackage) 构建一个新的U类对象指针,不用new,用 NewObject<模板类名称>(); 02 UCLASS标记宏 语法结构 UCLASS...
*/UObject*GetDefaultObject(boolbCreateIfNeeded =true)const{if(ClassDefaultObject == nullptr && bCreateIfNeeded) { const_cast<UClass*>(this)->CreateDefaultObject(); }returnClassDefaultObject; } __DefaultConstruct# 在NewObject的调用中,该代码完成了对指定类构造函数的调用 (*InClass->ClassConstructor...
说明一下,_BlueprintReadOnly_相当于表示该属性为const,关于UPROPERTY宏更多的参数,参考Link。下面举个例。 UCLASS()classAMyActor:public AActor { GENERATED_BODY() public: UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="Damage") int32 TotalDamage; ...
UCLASS()class UTeaOptions:public UObject{GENERATED_BODY()public:UPROPERTY()int32 MaximumNumberOfCupsPerDay=10;UPROPERTY()floatCupWidth=11.5f;UPROPERTY()FString TeaType=TEXT("Earl Grey");UPROPERTY()EDrinkingStyle DrinkingStyle=EDrinkingStyle::PinkyExtended;}; ...
DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FAttibuteInfoSignature, const FMyAttributeInfo&, Info); /** * */ UCLASS(BlueprintType, Blueprintable) class AURA_API UAttributeMenuWidgetController : public UMyWidgetController { GENERATED_BODY()
UCLASS(Blueprintable)classAYourActor{GENERATED_BODY()public:UPROPERTY(Replicated,ReplicatedUsing=OnRep_DoorState)uint32 YourProperty=0;};voidAYourActor::GetLifetimeReplicatedProps(TArray&OutLifetimeProps)const{Super::GetLifetimeReplicatedProps(OutLifetimeProps);DOREPLIFETIME_CONDITION(AYourActor,YourPropert...
UCLASS() classRESSCANNER_APIUResScannerCommandlet :publicUCommandlet { GENERATED_BODY() public: virtualint32Main(constFString& Params)override; }; 其中的Main函数,就是当通过-run=命令启动该 Commandlet 时,会执行到的逻辑,就像前面纯 C++ 的 main 函数一样。
static bool SphereOverlapComponents(const UObject* WorldContextObject, const FVector SpherePos, float SphereRadius, const TArray<TEnumAsByte<EObjectTypeQuery>>& ObjectTypes, UClass* ComponentClassFilter, const TArray<AActor*>& ActorsToIgnore, TArray<class UPrimitiveComponent*>& OutComponents); ...