#pragma once //PUBGM(0.13.5)32位SDK //作者:清华 //Telegram:@qinghuanb666 //生成时间:Fri Apr 18 20:44:40 2025 namespace SDK { //--------------------------------------------------------------------------- //Classes //--------------------------------------------------------------------------- // Class ProceduralMeshComponent.KismetProceduralMeshLibrary // 0x0000 (0x0020 - 0x0020) class UKismetProceduralMeshLibrary : public UBlueprintFunctionLibrary { public: static UClass* StaticClass() { static UClass *pStaticClass = 0; if (!pStaticClass) pStaticClass = UObject::FindClass("Class ProceduralMeshComponent.KismetProceduralMeshLibrary"); return pStaticClass; } static void SliceProceduralMesh(class UProceduralMeshComponent* InProcMesh, const struct FVector& PlanePosition, const struct FVector& PlaneNormal, bool bCreateOtherHalf, class UMaterialInterface* CapMaterial, EProcMeshSliceCapOption CapOption, class UProceduralMeshComponent** OutOtherHalfProcMesh); static void GetSectionFromStaticMesh(class UStaticMesh* InMesh, int LODIndex, int SectionIndex, TArray* Vertices, TArray* Triangles, TArray* Normals, TArray* UVs, TArray* Tangents); static void GenerateBoxMesh(const struct FVector& BoxRadius, TArray* Vertices, TArray* Triangles, TArray* Normals, TArray* UVs, TArray* Tangents); static void CreateGridMeshTriangles(int NumX, int NumY, bool bWinding, TArray* Triangles); static void CopyProceduralMeshFromStaticMeshComponent(class UStaticMeshComponent* StaticMeshComponent, int LODIndex, class UProceduralMeshComponent* ProcMeshComponent, bool bCreateCollision); static void ConvertQuadToTriangles(int Vert0, int Vert1, int Vert2, int Vert3, TArray* Triangles); static void CalculateTangentsForMesh(TArray Vertices, TArray Triangles, TArray UVs, TArray* Normals, TArray* Tangents); }; // Class ProceduralMeshComponent.ProceduralMeshComponent // 0x0050 (0x0660 - 0x0610) class UProceduralMeshComponent : public UMeshComponent { public: bool bUseComplexAsSimpleCollision; // 0x0610(0x0001) (Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, IsPlainOldData) bool bUseAsyncCooking; // 0x0611(0x0001) (Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, IsPlainOldData) unsigned char UnknownData00[0x2]; // 0x0612(0x0002) MISSED OFFSET class UBodySetup* ProcMeshBodySetup; // 0x0614(0x0004) (ExportObject, ZeroConstructor, InstancedReference, IsPlainOldData) TArray ProcMeshSections; // 0x0618(0x000C) (ZeroConstructor) TArray CollisionConvexElems; // 0x0624(0x000C) (ZeroConstructor) struct FBoxSphereBounds LocalBounds; // 0x0630(0x001C) (IsPlainOldData) TArray AsyncBodySetupQueue; // 0x064C(0x000C) (ZeroConstructor, Transient) unsigned char UnknownData01[0x8]; // 0x0658(0x0008) MISSED OFFSET static UClass* StaticClass() { static UClass *pStaticClass = 0; if (!pStaticClass) pStaticClass = UObject::FindClass("Class ProceduralMeshComponent.ProceduralMeshComponent"); return pStaticClass; } void UpdateMeshSection_LinearColor(int SectionIndex, TArray Vertices, TArray Normals, TArray UV0, TArray VertexColors, TArray Tangents); void UpdateMeshSection(int SectionIndex, TArray Vertices, TArray Normals, TArray UV0, TArray VertexColors, TArray Tangents); void SetMeshSectionVisible(int SectionIndex, bool bNewVisibility); bool IsMeshSectionVisible(int SectionIndex); int GetNumSections(); void CreateMeshSection_LinearColor(int SectionIndex, TArray Vertices, TArray Triangles, TArray Normals, TArray UV0, TArray VertexColors, TArray Tangents, bool bCreateCollision); void CreateMeshSection(int SectionIndex, TArray Vertices, TArray Triangles, TArray Normals, TArray UV0, TArray VertexColors, TArray Tangents, bool bCreateCollision); void ClearMeshSection(int SectionIndex); void ClearCollisionConvexMeshes(); void ClearAllMeshSections(); void AddCollisionConvexMesh(TArray ConvexVerts); }; }