static void LoadNativeType() { //if (NativeReflection.CachedTypeInfo.Enabled) //{ // NativeReflection.CachedTypeInfo typeInfo = NativeReflection.CachedTypeInfo.BuildStruct("/Game/Pong/Test/TestSS.TestSS"); // StructSize = typeInfo.Size; // MemberVar_0_IsValid = typeInfo.GetPropertyRefOffsetAndValidate("MemberVar_0_B281C27C4F41FBF7A9E425A51E7BD044", ref MemberVar_0_PropertyAddress, out MemberVar_0_Offset, Classes.UBoolProperty); // MemberVar_1_IsValid = typeInfo.GetPropertyRefOffsetAndValidate("MemberVar_1_26_1BA5D22942BB264D88A4B2A9EEF51AC5", ref MemberVar_1_PropertyAddress, out MemberVar_1_Offset, Classes.UArrayProperty); // MemberVar_21_IsValid = typeInfo.GetPropertyOffsetAndValidate("MemberVar_1_26_1BA5D22942BB264D88A4B2A9EEF51AC5", out MemberVar_21_Offset, Classes.UByteProperty); // FTestSS_IsValid = typeInfo.Exists && MemberVar_0_IsValid && MemberVar_1_IsValid && MemberVar_21_IsValid; // typeInfo.LogIsValid(FTestSS_IsValid); //} //else { IntPtr classAddress = NativeReflection.GetStruct("/Game/Pong/Test/TestSS.TestSS"); StructSize = NativeReflection.GetStructSize(classAddress); NativeReflectionCached.GetPropertyRef(ref MemberVar_0_PropertyAddress, classAddress, "MemberVar_0_B281C27C4F41FBF7A9E425A51E7BD044"); MemberVar_0_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "MemberVar_0_B281C27C4F41FBF7A9E425A51E7BD044"); MemberVar_0_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "MemberVar_0_B281C27C4F41FBF7A9E425A51E7BD044", Classes.UBoolProperty); NativeReflectionCached.GetPropertyRef(ref MemberVar_1_PropertyAddress, classAddress, "MemberVar_1_26_1BA5D22942BB264D88A4B2A9EEF51AC5"); MemberVar_1_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "MemberVar_1_26_1BA5D22942BB264D88A4B2A9EEF51AC5"); MemberVar_1_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "MemberVar_1_26_1BA5D22942BB264D88A4B2A9EEF51AC5", Classes.UArrayProperty); MemberVar_21_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "MemberVar_21_25_B2CA1FFA4E95516B70C7E9A68011B260"); MemberVar_21_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "MemberVar_21_25_B2CA1FFA4E95516B70C7E9A68011B260", Classes.UByteProperty); FTestSS_IsValid = classAddress != IntPtr.Zero && MemberVar_0_IsValid && MemberVar_1_IsValid && MemberVar_21_IsValid; NativeReflection.LogStructIsValid("/Game/Pong/Test/TestSS.TestSS", FTestSS_IsValid); } }
static void LoadNativeType() { //if (NativeReflection.CachedTypeInfo.Enabled) //{ // NativeReflection.CachedTypeInfo typeInfo = NativeReflection.CachedTypeInfo.BuildStruct("/Script/Engine.EditorElement"); // StructSize = typeInfo.Size; // Indices_IsValid = typeInfo.GetPropertyRefOffsetAndValidate("Indices", ref Indices_PropertyAddress, out Indices_Offset, Classes.UIntProperty); // Weights_IsValid = typeInfo.GetPropertyRefOffsetAndValidate("Weights", ref Weights_PropertyAddress, out Weights_Offset, Classes.UFloatProperty); // FEditorElement_IsValid = typeInfo.Exists && Indices_IsValid && Weights_IsValid; // typeInfo.LogIsValid(FEditorElement_IsValid); //} //else { IntPtr classAddress = NativeReflection.GetStruct("/Script/Engine.EditorElement"); StructSize = NativeReflection.GetStructSize(classAddress); NativeReflectionCached.GetPropertyRef(ref Indices_PropertyAddress, classAddress, "Indices"); Indices_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "Indices"); Indices_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "Indices", Classes.UIntProperty); NativeReflectionCached.GetPropertyRef(ref Weights_PropertyAddress, classAddress, "Weights"); Weights_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "Weights"); Weights_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "Weights", Classes.UFloatProperty); FEditorElement_IsValid = classAddress != IntPtr.Zero && Indices_IsValid && Weights_IsValid; NativeReflection.LogStructIsValid("/Script/Engine.EditorElement", FEditorElement_IsValid); } }
static void LoadNativeType() { //if (NativeReflection.CachedTypeInfo.Enabled) //{ // NativeReflection.CachedTypeInfo typeInfo = NativeReflection.CachedTypeInfo.BuildStruct("/Script/Engine.DebugFloatHistory"); // StructSize = typeInfo.Size; // MaxSamples_IsValid = typeInfo.GetPropertyOffsetAndValidate("MaxSamples", out MaxSamples_Offset, Classes.UFloatProperty); // MinValue_IsValid = typeInfo.GetPropertyOffsetAndValidate("MinValue", out MinValue_Offset, Classes.UFloatProperty); // MaxValue_IsValid = typeInfo.GetPropertyOffsetAndValidate("MaxValue", out MaxValue_Offset, Classes.UFloatProperty); // AutoAdjustMinMax_IsValid = typeInfo.GetPropertyRefOffsetAndValidate("bAutoAdjustMinMax", ref AutoAdjustMinMax_PropertyAddress, out AutoAdjustMinMax_Offset, Classes.UBoolProperty); // FDebugFloatHistory_IsValid = typeInfo.Exists && MaxSamples_IsValid && MaxValue_IsValid && AutoAdjustMinMax_IsValid; // typeInfo.LogIsValid(FDebugFloatHistory_IsValid); //} //else { IntPtr classAddress = NativeReflection.GetStruct("/Script/Engine.DebugFloatHistory"); StructSize = NativeReflection.GetStructSize(classAddress); MaxSamples_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "MaxSamples"); MaxSamples_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "MaxSamples", Classes.UFloatProperty); MinValue_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "MinValue"); MinValue_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "MinValue", Classes.UFloatProperty); MaxValue_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "MaxValue"); MaxValue_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "MaxValue", Classes.UFloatProperty); NativeReflectionCached.GetPropertyRef(ref AutoAdjustMinMax_PropertyAddress, classAddress, "bAutoAdjustMinMax"); AutoAdjustMinMax_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "bAutoAdjustMinMax"); AutoAdjustMinMax_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "bAutoAdjustMinMax", Classes.UBoolProperty); FDebugFloatHistory_IsValid = classAddress != IntPtr.Zero && MaxSamples_IsValid && MinValue_IsValid && MaxValue_IsValid && AutoAdjustMinMax_IsValid; NativeReflection.LogStructIsValid("/Script/Engine.DebugFloatHistory", FDebugFloatHistory_IsValid); } }
static void LoadNativeType() { //if (NativeReflection.CachedTypeInfo.Enabled) //{ // NativeReflection.CachedTypeInfo typeInfo = NativeReflection.CachedTypeInfo.BuildClass("/Script/MaterialShaderQualitySettings.ShaderPlatformQualitySettings"); // QualityOverrides_IsValid = typeInfo.GetPropertyRefOffsetAndValidate("QualityOverrides", ref QualityOverrides_PropertyAddress, out QualityOverrides_Offset, Classes.UStructProperty); //} //else { IntPtr classAddress = NativeReflection.GetClass("/Script/MaterialShaderQualitySettings.ShaderPlatformQualitySettings"); NativeReflectionCached.GetPropertyRef(ref QualityOverrides_PropertyAddress, classAddress, "QualityOverrides"); QualityOverrides_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "QualityOverrides"); QualityOverrides_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "QualityOverrides", Classes.UStructProperty); } }
static void LoadNativeType() { IntPtr classAddress = NativeReflection.GetStruct("/Script/Engine.TickFunction"); FTickFunction_StructSize = NativeReflection.GetStructSize(classAddress); NativeReflectionCached.GetPropertyRef(ref TickGroup_PropertyAddress, classAddress, "TickGroup"); TickGroup_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "TickGroup"); bool TickGroup_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "TickGroup", Classes.UByteProperty); NativeReflectionCached.GetPropertyRef(ref EndTickGroup_PropertyAddress, classAddress, "EndTickGroup"); EndTickGroup_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "EndTickGroup"); bool EndTickGroup_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "EndTickGroup", Classes.UByteProperty); NativeReflectionCached.GetPropertyRef(ref TickEvenWhenPaused_PropertyAddress, classAddress, "bTickEvenWhenPaused"); TickEvenWhenPaused_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "bTickEvenWhenPaused"); bool TickEvenWhenPaused_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "bTickEvenWhenPaused", Classes.UBoolProperty); NativeReflectionCached.GetPropertyRef(ref CanEverTick_PropertyAddress, classAddress, "bCanEverTick"); CanEverTick_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "bCanEverTick"); bool CanEverTick_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "bCanEverTick", Classes.UBoolProperty); NativeReflectionCached.GetPropertyRef(ref StartWithTickEnabled_PropertyAddress, classAddress, "bStartWithTickEnabled"); StartWithTickEnabled_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "bStartWithTickEnabled"); bool StartWithTickEnabled_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "bStartWithTickEnabled", Classes.UBoolProperty); NativeReflectionCached.GetPropertyRef(ref AllowTickOnDedicatedServer_PropertyAddress, classAddress, "bAllowTickOnDedicatedServer"); AllowTickOnDedicatedServer_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "bAllowTickOnDedicatedServer"); bool AllowTickOnDedicatedServer_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "bAllowTickOnDedicatedServer", Classes.UBoolProperty); TickInterval_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "TickInterval"); bool TickInterval_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "TickInterval", Classes.UFloatProperty); bool FTickFunction_IsValid = classAddress != IntPtr.Zero && TickGroup_IsValid && EndTickGroup_IsValid && TickEvenWhenPaused_IsValid && CanEverTick_IsValid && StartWithTickEnabled_IsValid && AllowTickOnDedicatedServer_IsValid && TickInterval_IsValid; Debug.Assert(FTickFunction_IsValid); }
static void LoadNativeType() { //if (NativeReflection.CachedTypeInfo.Enabled) //{ // NativeReflection.CachedTypeInfo typeInfo = NativeReflection.CachedTypeInfo.BuildStruct("/Script/MaterialShaderQualitySettings.MaterialQualityOverrides"); // StructSize = typeInfo.Size; // EnableOverride_IsValid = typeInfo.GetPropertyRefOffsetAndValidate("bEnableOverride", ref EnableOverride_PropertyAddress, out EnableOverride_Offset, Classes.UBoolProperty); // ForceFullyRough_IsValid = typeInfo.GetPropertyRefOffsetAndValidate("bForceFullyRough", ref ForceFullyRough_PropertyAddress, out ForceFullyRough_Offset, Classes.UBoolProperty); // ForceNonMetal_IsValid = typeInfo.GetPropertyRefOffsetAndValidate("bForceNonMetal", ref ForceNonMetal_PropertyAddress, out ForceNonMetal_Offset, Classes.UBoolProperty); // ForceDisableLMDirectionality_IsValid = typeInfo.GetPropertyRefOffsetAndValidate("bForceDisableLMDirectionality", ref ForceDisableLMDirectionality_PropertyAddress, out ForceDisableLMDirectionality_Offset, Classes.UBoolProperty); // ForceLQReflections_IsValid = typeInfo.GetPropertyRefOffsetAndValidate("bForceLQReflections", ref ForceLQReflections_PropertyAddress, out ForceLQReflections_Offset, Classes.UBoolProperty); // MobileCSMQuality_IsValid = typeInfo.GetPropertyRefOffsetAndValidate("MobileCSMQuality", ref MobileCSMQuality_PropertyAddress, out MobileCSMQuality_Offset, Classes.UEnumProperty); // FMaterialQualityOverrides_IsValid = typeInfo.Exists && EnableOverride_IsValid && ForceFullyRough_IsValid && ForceNonMetal_IsValid && ForceDisableLMDirectionality_IsValid && ForceLQReflections_IsValid && MobileCSMQuality_IsValid; // typeInfo.LogIsValid(FMaterialQualityOverrides_IsValid); //} //else { IntPtr classAddress = NativeReflection.GetStruct("/Script/MaterialShaderQualitySettings.MaterialQualityOverrides"); StructSize = NativeReflection.GetStructSize(classAddress); NativeReflectionCached.GetPropertyRef(ref EnableOverride_PropertyAddress, classAddress, "bEnableOverride"); EnableOverride_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "bEnableOverride"); EnableOverride_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "bEnableOverride", Classes.UBoolProperty); NativeReflectionCached.GetPropertyRef(ref ForceFullyRough_PropertyAddress, classAddress, "bForceFullyRough"); ForceFullyRough_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "bForceFullyRough"); ForceFullyRough_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "bForceFullyRough", Classes.UBoolProperty); NativeReflectionCached.GetPropertyRef(ref ForceNonMetal_PropertyAddress, classAddress, "bForceNonMetal"); ForceNonMetal_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "bForceNonMetal"); ForceNonMetal_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "bForceNonMetal", Classes.UBoolProperty); NativeReflectionCached.GetPropertyRef(ref ForceDisableLMDirectionality_PropertyAddress, classAddress, "bForceDisableLMDirectionality"); ForceDisableLMDirectionality_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "bForceDisableLMDirectionality"); ForceDisableLMDirectionality_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "bForceDisableLMDirectionality", Classes.UBoolProperty); NativeReflectionCached.GetPropertyRef(ref ForceLQReflections_PropertyAddress, classAddress, "bForceLQReflections"); ForceLQReflections_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "bForceLQReflections"); ForceLQReflections_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "bForceLQReflections", Classes.UBoolProperty); NativeReflectionCached.GetPropertyRef(ref MobileCSMQuality_PropertyAddress, classAddress, "MobileCSMQuality"); MobileCSMQuality_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "MobileCSMQuality"); MobileCSMQuality_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "MobileCSMQuality", Classes.UEnumProperty); FMaterialQualityOverrides_IsValid = classAddress != IntPtr.Zero && EnableOverride_IsValid && ForceFullyRough_IsValid && ForceNonMetal_IsValid && ForceDisableLMDirectionality_IsValid && ForceLQReflections_IsValid && MobileCSMQuality_IsValid; NativeReflection.LogStructIsValid("/Script/MaterialShaderQualitySettings.MaterialQualityOverrides", FMaterialQualityOverrides_IsValid); } }
static void LoadNativeType() { //if (NativeReflection.CachedTypeInfo.Enabled) //{ // NativeReflection.CachedTypeInfo typeInfo = NativeReflection.CachedTypeInfo.BuildStruct("/Script/USharp.MyStructCustomCtor"); // StructSize = typeInfo.Size; // MyValue_IsValid = typeInfo.GetPropertyOffsetAndValidate("MyValue", out MyValue_Offset, Classes.UStrProperty); // FMyStructCustomCtor_IsValid = typeInfo.Exists && MyValue_IsValid; // typeInfo.LogIsValid(FMyStructCustomCtor_IsValid); //} //else { IntPtr classAddress = NativeReflection.GetStruct("/Script/USharp.MyStructCustomCtor"); StructSize = NativeReflection.GetStructSize(classAddress); MyValue_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "MyValue"); MyValue_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "MyValue", Classes.UStrProperty); //MyValue_IsValid = NativeReflectionCached.ValidatePropertyClass(classAddress, "MyValue", Classes.UIntProperty); FMyStructCustomCtor_IsValid = classAddress != IntPtr.Zero && MyValue_IsValid; NativeReflection.LogStructIsValid("/Script/USharp.MyStructCustomCtor", FMyStructCustomCtor_IsValid); } }
static void LoadNativeType() { //if (NativeReflection.CachedTypeInfo.Enabled) //{ // NativeReflection.CachedTypeInfo typeInfo = NativeReflection.CachedTypeInfo.BuildFunction("/Script/USharp.DelegateRefTest__DelegateSignature"); // DelegateRefTest__DelegateSignature_FunctionAddress = typeInfo.Address; // DelegateRefTest__DelegateSignature_ParamsSize = typeInfo.Size; // DelegateRefTest__DelegateSignature_SomeArgument_IsValid = typeInfo.GetPropertyRefOffsetAndValidate("SomeArgument", ref DelegateRefTest__DelegateSignature_SomeArgument_PropertyAddress, out DelegateRefTest__DelegateSignature_SomeArgument_Offset, Classes.UIntProperty); // DelegateRefTest__DelegateSignature_IsValid = typeInfo.Exists && DelegateRefTest__DelegateSignature_SomeArgument_IsValid; // typeInfo.LogIsValid(DelegateRefTest__DelegateSignature_IsValid); //} //else { DelegateRefTest__DelegateSignature_FunctionAddress = NativeReflection.GetFunction("/Script/USharp.DelegateRefTest__DelegateSignature"); DelegateRefTest__DelegateSignature_ParamsSize = NativeReflection.GetFunctionParamsSize(DelegateRefTest__DelegateSignature_FunctionAddress); NativeReflectionCached.GetPropertyRef(ref DelegateRefTest__DelegateSignature_SomeArgument_PropertyAddress, DelegateRefTest__DelegateSignature_FunctionAddress, "SomeArgument"); DelegateRefTest__DelegateSignature_SomeArgument_Offset = NativeReflectionCached.GetPropertyOffset(DelegateRefTest__DelegateSignature_FunctionAddress, "SomeArgument"); DelegateRefTest__DelegateSignature_SomeArgument_IsValid = NativeReflectionCached.ValidatePropertyClass(DelegateRefTest__DelegateSignature_FunctionAddress, "SomeArgument", Classes.UIntProperty); DelegateRefTest__DelegateSignature_IsValid = DelegateRefTest__DelegateSignature_FunctionAddress != IntPtr.Zero && DelegateRefTest__DelegateSignature_SomeArgument_IsValid; NativeReflection.LogFunctionIsValid("/Script/USharp.DelegateRefTest__DelegateSignature", DelegateRefTest__DelegateSignature_IsValid); } }
static void LoadNativeTypeInjected(IntPtr classAddress) { PrimaryActorTick_Offset = NativeReflectionCached.GetPropertyOffset(classAddress, "PrimaryActorTick"); }