You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
DynamicMesh: Fix the conformal solve functionality in the DynamicMeshUVEditor when setting using existing UV flag to true. Old code was clearing UVs before processing and incorrectly tracking relationships between the internal solver and the final overlay.
#rb David.Hill #rnx #jira UE-131578 #ROBOMERGE-AUTHOR: nathan.mitchell #ROBOMERGE-SOURCE: CL 17819290 in //UE5/Release-5.0/... via CL 17819303 #ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v881-17767770) #ROBOMERGE[STARSHIP]: UE5-Main [CL 17819315 by nathan mitchell in ue5-release-engine-test branch]
This commit is contained in:
+6
-4
@@ -527,6 +527,11 @@ bool FDynamicMeshUVEditor::SetTriangleUVsFromFreeBoundaryConformal(const TArray<
|
||||
if (ensure(UVOverlay) == false) return false;
|
||||
if (Triangles.Num() == 0) return false;
|
||||
|
||||
if (!bUseExistingUVTopology)
|
||||
{
|
||||
ResetUVs(Triangles);
|
||||
}
|
||||
|
||||
FDynamicMesh3 Submesh(EMeshComponents::None);
|
||||
TMap<int32, int32> BaseToSubmeshV;
|
||||
TArray<int32> SubmeshToBaseV;
|
||||
@@ -548,7 +553,7 @@ bool FDynamicMeshUVEditor::SetTriangleUVsFromFreeBoundaryConformal(const TArray<
|
||||
FVector3d Position = Mesh->GetVertex((bUseExistingUVTopology) ? UVOverlay->GetParentVertex(Triangle[j]) : Triangle[j]);
|
||||
int32 NewVtxID = Submesh.AppendVertex(Position);
|
||||
check(NewVtxID == SubmeshToBaseV.Num());
|
||||
SubmeshToBaseV.Add(NewVtxID);
|
||||
SubmeshToBaseV.Add(Triangle[j]);
|
||||
BaseToSubmeshV.Add(Triangle[j], NewVtxID);
|
||||
NewTriangle[j] = NewVtxID;
|
||||
}
|
||||
@@ -620,9 +625,6 @@ bool FDynamicMeshUVEditor::SetTriangleUVsFromFreeBoundaryConformal(const TArray<
|
||||
}
|
||||
else
|
||||
{
|
||||
// clear existing triangles
|
||||
ResetUVs(Triangles);
|
||||
|
||||
// copy back to target UVOverlay
|
||||
TArray<int32> VtxElementIDs;
|
||||
TArray<int32> NewElementIDs;
|
||||
|
||||
Reference in New Issue
Block a user