21 #include "Materials/MaterialInstanceDynamic.h"
27 #include "assimp/Importer.hpp"
29 #include "assimp/mesh.h"
31 #include "assimp/scene.h"
37 #include "ProceduralMeshComponent.h"
49 #include "RRMeshUtils.generated.h"
53 #define RAPYUTA_MESH_UTILS_DEBUG (0)
72 class RAPYUTASIMULATIONPLUGINS_API
URRMeshUtils :
public UBlueprintFunctionLibrary
102 static void ProcessMeshNode(aiNode* InNode,
104 const aiScene* InScene,
106 int InParentNodeIndex,
114 static bool ProcessTexture(aiMaterial* InMaterial,
116 const aiTextureType InTextureType,
118 const TCHAR* InTextureTypeName,
120 const FString& InTextureBasePath,
122 UMaterialInstanceDynamic* OutUEMaterial);
124 static void ProcessMaterial(aiMaterial* InMaterial,
const FString& InMeshFilePath,
FRRMeshData& OutMeshData);
128 static FRRMeshData LoadMeshFromFile(
const FString& InMeshFilePath, Assimp::Importer& InMeshImporter,
float InMeshScale = 1.f);