MeltyPlayer / FinModelUtility

Model viewer and command-line tools for extracting models from various GCN/3DS/PC games en-masse.
GNU General Public License v3.0
89 stars 9 forks source link

Exceptions when exporting models from Pikmin 1 #32

Open loveandrespect393 opened 8 months ago

loveandrespect393 commented 8 months ago

Used FinModelUtility from 10-25-2023 (downloaded the zip from the green "Code" button) and used pikmin_1.nkit.iso

Ran rip_pikmin_1.bat and got the following exceptions:

...

Exporting model \dataDir\bosses\slime\slime.mod System.IndexOutOfRangeException: Index was outside the bounds of the array. at mod.schema.animation.DcxHelpers.AddAnimation(IBone[] bones, IAnimationManager animationManager, IDcx dcx) at mod.api.ModModelImporter.ImportModel(ModModelFileBundle modelFileBundle) at uni.games.ExporterUtil.<>c__DisplayClass13_01.<Export>b__0() at uni.games.ExporterUtil.Export[T](IAnnotatedFileBundle1 annotatedModelFileBundle, Func1 loaderHandler, ISystemDirectory outputDirectory, IReadOnlyList1 formats, Boolean overwriteExistingFile, String overrideName)

...

Exporting model \dataDir\objects\plants\hae.mod Writing to E:\video editing resources\Modding Resources\Pikmin Resources\FinModelUtility-main\FinModelUtility-main\cli\out\pikmin_1\dataDir\objects\plants\hae.tmp.glb... System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection. (Parameter 'index') at System.Collections.Generic.List1.get_Item(Int32 index) at System.Collections.ObjectModel.ReadOnlyCollection1.get_Item(Int32 index) at fin.model.io.exporters.assimp.indirect.AssimpIndirectUvFixer.Fix(IModel model, Scene sc) at fin.model.io.exporters.assimp.indirect.AssimpIndirectModelExporter.ExportFormats(IModelExporterParams modelExporterParams, IReadOnlyList1 exportedFormats, Boolean exportAllTextures) at uni.games.ExporterUtil.Export[T](IAnnotatedFileBundle1 annotatedModelFileBundle, Func1 loaderHandler, ISystemDirectory outputDirectory, IReadOnlyList1 formats, Boolean overwriteExistingFile, String overrideName)

...

Exporting model \dataDir\objects\plants\ooinu_l.mod System.IndexOutOfRangeException: Index was outside the bounds of the array. at mod.schema.animation.DcxHelpers.AddAnimation(IBone[] bones, IAnimationManager animationManager, IDcx dcx) at mod.api.ModModelImporter.ImportModel(ModModelFileBundle modelFileBundle) at uni.games.ExporterUtil.<>c__DisplayClass13_01.<Export>b__0() at uni.games.ExporterUtil.Export[T](IAnnotatedFileBundle1 annotatedModelFileBundle, Func1 loaderHandler, ISystemDirectory outputDirectory, IReadOnlyList1 formats, Boolean overwriteExistingFile, String overrideName)

...

Exporting model \dataDir\tekis\miurin\miurin.mod fin.util.asserts.AssertionException: Expected to be true. at fin.model.impl.BoneWeightsDictionary.Create(VertexSpace vertexSpace, IBoneWeight[] weights) at fin.model.impl.ModelImpl1.SkinImpl.CreateBoneWeights(VertexSpace vertexSpace, IBoneWeight[] weights) at mod.api.ModModelImporter.<>c__DisplayClass3_0.<ImportModel>b__0(Envelope envelope) at System.Linq.Enumerable.SelectListIterator2.ToArray() at System.Linq.Enumerable.ToArray[TSource](IEnumerable1 source) at mod.api.ModModelImporter.ImportModel(ModModelFileBundle modelFileBundle) at uni.games.ExporterUtil.<>c__DisplayClass13_01.b__0() at uni.games.ExporterUtil.Export[T](IAnnotatedFileBundle1 annotatedModelFileBundle, Func1 loaderHandler, ISystemDirectory outputDirectory, IReadOnlyList`1 formats, Boolean overwriteExistingFile, String overrideName)

...

Exporting model \dataDir\tekis\namazu\hip.mod System.IndexOutOfRangeException: Index was outside the bounds of the array. at mod.api.ModModelImporter.AddMesh_(Mod mod, Mesh mesh, IMaterial material, ModelImpl model, IBone[] bones, IBoneWeights[] envelopeBoneWeights, FinModCache finModCache) at mod.api.ModModelImporter.ImportModel(ModModelFileBundle modelFileBundle) at uni.games.ExporterUtil.<>c__DisplayClass13_01.<Export>b__0() at uni.games.ExporterUtil.Export[T](IAnnotatedFileBundle1 annotatedModelFileBundle, Func1 loaderHandler, ISystemDirectory outputDirectory, IReadOnlyList1 formats, Boolean overwriteExistingFile, String overrideName)