diff --git a/CUE4Parse b/CUE4Parse index cf74fc32..e16842fa 160000 --- a/CUE4Parse +++ b/CUE4Parse @@ -1 +1 @@ -Subproject commit cf74fc32fe1b40e9fd3440032508c5e1d50cf58d +Subproject commit e16842fa0fd94919fcaba5bdcb361ec154be20ed diff --git a/FModel/Extensions/AvalonExtensions.cs b/FModel/Extensions/AvalonExtensions.cs index 3021e178..bb5b7db6 100644 --- a/FModel/Extensions/AvalonExtensions.cs +++ b/FModel/Extensions/AvalonExtensions.cs @@ -49,6 +49,7 @@ public static class AvalonExtensions case "bat": case "txt": case "pem": + case "js": case "po": return null; default: diff --git a/FModel/Views/Snooper/Models/Morph.cs b/FModel/Views/Snooper/Models/Morph.cs index 88eef114..a53aeb09 100644 --- a/FModel/Views/Snooper/Models/Morph.cs +++ b/FModel/Views/Snooper/Models/Morph.cs @@ -61,13 +61,13 @@ public class Morph : IDisposable } } - public Morph(float[] vertices, Dictionary dict, UMorphTarget morphTarget) + public Morph(float[] vertices, Dictionary dict, UMorphTarget morphTarget, int index = 0) { Name = morphTarget.Name; Vertices = new float[vertices.Length]; Array.Copy(vertices, Vertices, vertices.Length); - foreach (var vert in morphTarget.MorphLODModels[0].Vertices) + foreach (var vert in morphTarget.MorphLODModels[index].Vertices) { var count = 0; if (dict.TryGetValue(vert.SourceIdx, out var baseIndex)) diff --git a/FModel/Views/Snooper/Models/SkeletalModel.cs b/FModel/Views/Snooper/Models/SkeletalModel.cs index fcc25ac8..6b5c2dc2 100644 --- a/FModel/Views/Snooper/Models/SkeletalModel.cs +++ b/FModel/Views/Snooper/Models/SkeletalModel.cs @@ -101,10 +101,10 @@ public class SkeletalModel : UModel foreach (var morph in export.MorphTargets) { if (!morph.TryLoad(out UMorphTarget morphTarget) || morphTarget.MorphLODModels.Length < 1 || - morphTarget.MorphLODModels[0].Vertices.Length < 1) + morphTarget.MorphLODModels[skeletalMesh.LODs[LodLevel].LODIndex].Vertices.Length < 1) continue; - Morphs.Add(new Morph(cachedVertices, vertexLookup, morphTarget)); + Morphs.Add(new Morph(cachedVertices, vertexLookup, morphTarget, skeletalMesh.LODs[LodLevel].LODIndex)); } }