diff --git a/src/Add-on/ExportData.tsx b/src/Add-on/ExportData.tsx index 332ca3d15..bd856664b 100644 --- a/src/Add-on/ExportData.tsx +++ b/src/Add-on/ExportData.tsx @@ -12,6 +12,7 @@ import { Log } from "../Common/Log"; import { Vector2ApplyMatrix4 } from "../Common/Matrix4Utils"; import { StoreageKeys } from '../Common/StoreageKeys'; import { copyTextToClipboard } from "../Common/Utils"; +import { IsMirror } from '../csg/core/math/IsMirrot'; import { CylinderHole } from '../DatabaseServices/3DSolid/CylinderHole'; import { ExtrudeHole } from '../DatabaseServices/3DSolid/ExtrudeHole'; import { RevolveSolid } from '../DatabaseServices/3DSolid/RevolveSolid'; @@ -361,8 +362,17 @@ function ConveEntityRef2Data(e: EntityRef) ref.Id = e.Id?.Index ?? 0; ref.Type = "Ref"; ref.Url = e.Url; - ref.OCS = e.OCS.toArray(); + + ref.OCS = e.OCSNoClone.toArray(); ref.Scale = e.Scale.toArray(); + if (IsMirror(e.OCSNoClone)) + { + ref.OCS[8] *= -1; + ref.OCS[9] *= -1; + ref.OCS[10] *= -1; + ref.Scale[2] *= -1; + } + //由于我们是右手坐标系,在UE导出资源的时候,已经自动个转换,所以我们在这里改变它,以便在UE里面能正确的还原 ref.OCS[4] *= -1; ref.OCS[5] *= -1;