Navigation
API > API/Developer > API/Developer/MeshMergeUtilities
Used to keep track of in-flight data while meshes are merged and their corresponding materials baked down
| Name | FMeshMergeDataTracker |
| Type | class |
| Header File | /Engine/Source/Developer/MeshMergeUtilities/Public/MeshMergeDataTracker.h |
| Include Path | #include "MeshMergeDataTracker.h" |
Syntax
class FMeshMergeDataTracker
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FMeshMergeDataTracker() |
MeshMergeDataTracker.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FMeshDescription & AddAndRetrieveRawMesh
(
int32 MeshIndex, |
Adds or retrieves raw mesh data for the mesh and LOD index | MeshMergeDataTracker.h | |
void AddBakedMaterialSection
(
const FSectionInfo& SectionInfo |
Clears out unique section to be replaced with the baked material one | MeshMergeDataTracker.h | |
void AddComponentToWedgeMapping
(
int32 MeshIndex, |
MeshMergeDataTracker.h | ||
void AddLightmapChannelRecord
(
int32 MeshIndex, |
Adds a record of what channel lightmap data is stored at | MeshMergeDataTracker.h | |
void AddLightMapPixels
(
int32 Pixels |
Add number of lightmap pixels used for one of the Meshes | MeshMergeDataTracker.h | |
void AddLODIndex
(
int32 LODIndex |
Adds a LOD index which will be part of the final merged mesh | MeshMergeDataTracker.h | |
void AddMaterialSlotName
(
UMaterialInterface* MaterialInterface, |
Add a material slot name for a unique material instance. | MeshMergeDataTracker.h | |
int32 AddSection
(
const FSectionInfo& SectionInfo |
Adds (unique) section to stored data | MeshMergeDataTracker.h | |
void AddSectionRemapping
(
int32 MeshIndex, |
Adding a mapping between the index for an original mesh section index and the mesh section it will be indexed to in the final mesh | MeshMergeDataTracker.h | |
bool DoesAnyLODContainVertexColors() |
Returns whether or not any raw mesh entry contains vertex colors for any LOD index | MeshMergeDataTracker.h | |
bool DoesLODContainVertexColors
(
int32 LODIndex |
Returns whether or not any raw mesh entry contains vertex colors for the specified LOD index | MeshMergeDataTracker.h | |
bool DoesMeshLODRequireUniqueUVs
(
FMeshLODKey Key |
Returns whether or not the raw mesh entry for the given MeshLOD key requires unique UVs for baking out its material(s) | MeshMergeDataTracker.h | |
bool DoesUVChannelContainData
(
int32 UVChannel, |
Returns whether or not any raw mesh entry contains texture coordinates for the specified UV channel and LOD index | MeshMergeDataTracker.h | |
bool DoesUVChannelContainData
(
int32 UVChannel |
Returns whether or not any raw mesh entry contains texture coordinates for the specified UV channel and any LOD index | MeshMergeDataTracker.h | |
FMeshDescription * FindRawMeshAndLODIndex
(
int32 MeshIndex, |
Tries to retrieve a FMeshDescription and returns the LOD index it found an entry for | MeshMergeDataTracker.h | |
int32 GetAvailableLightMapUVChannel() |
Returns the first available UV channel across all raw mesh entries, which will be a good fit for the lightmap UV index in the final mesh | MeshMergeDataTracker.h | |
uint32 GetComponentToWedgeMappng
(
int32 MeshIndex, |
MeshMergeDataTracker.h | ||
TConstRawMeshIterator GetConstRawMeshIterator() |
Returns a const key/value iterator for the FMeshDescription entries | MeshMergeDataTracker.h | |
int32 GetLightMapDimension() |
Returns the texture dimension required to distribute all of the lightmap pixels | MeshMergeDataTracker.h | |
TConstLODIndexIterator GetLODIndexIterator() |
Iterates over LOD indices for mesh | MeshMergeDataTracker.h | |
void GetMappingsForMeshLOD
(
FMeshLODKey Key, |
Retrieves all section mappings for the MeshLOD key | MeshMergeDataTracker.h | |
UMaterialInterface * GetMaterialForSectionIndex
(
int32 SectionIndex |
Returns the material used by the unique section | MeshMergeDataTracker.h | |
FName GetMaterialSlotName
(
UMaterialInterface* MaterialInterface |
Get the material slot name from a unique material instance. | MeshMergeDataTracker.h | |
void GetMeshLODsMappedToUniqueSection
(
int32 UniqueIndex, |
Retrieves the MeshLOD keys from which the original sections are mapped to the unique section index | MeshMergeDataTracker.h | |
int32 GetNumLODsForMergedMesh() |
Retrieves number of LODs part of the final merged mesh | MeshMergeDataTracker.h | |
TRawMeshIterator GetRawMeshIterator() |
Returns a non-const key/value iterator for the FMeshDescription entries | MeshMergeDataTracker.h | |
FMeshDescription * GetRawMeshPtr
(
FMeshLODKey Key |
Retrieves Raw Mesh ptr for the given MeshLOD key | MeshMergeDataTracker.h | |
FMeshDescription * GetRawMeshPtr
(
int32 MeshIndex, |
Retrieves Raw Mesh ptr for the given mesh and LOD index | MeshMergeDataTracker.h | |
const FSectionInfo & GetSection
(
int32 SectionIndex |
Returns the unique section instance | MeshMergeDataTracker.h | |
double GetTextureSizeFromTargetTexelDensity
(
float InTargetTexelDensity |
MeshMergeDataTracker.h | ||
int32 NumberOfUniqueSections() |
Returns the number of unique sections | MeshMergeDataTracker.h | |
void ProcessRawMeshes() |
Looks at all available raw mesh data and processes it to populate some flags | MeshMergeDataTracker.h | |
void RemoveRawMesh
(
int32 MeshIndex, |
Removes raw mesh entry for the given mesh and LOD index | MeshMergeDataTracker.h | |
FMeshDescription * TryFindRawMeshForLOD
(
int32 MeshIndex, |
Tries to retrieve a FMeshDescription for the given mesh and LOD index, if it can't it will try to find an entry for each LOD levle below InOutDesiredLODIndex | MeshMergeDataTracker.h |