Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support 10.2.0.0, User Version 1 #34

Open
neomonkeus opened this issue Oct 15, 2014 · 1 comment
Open

Support 10.2.0.0, User Version 1 #34

neomonkeus opened this issue Oct 15, 2014 · 1 comment

Comments

@neomonkeus
Copy link
Member

Migrated from sf.net

When I try to load a .nif file (Gamebryo File Format, Version 10.2.0.0), I have systematically an error : "9 Vertex not found"
The number is different if I change the input file, but no one works.
I joinded a file which contain a sample of my files.

I can provide more details :
In Nifscope I have this if I brower the blocks list :
"10 NiNode "
And in block details :
"Name=Name Type=stringValue="
And my error is more precisely : "9 Vertex weight not found"

Its a new file format for "nif.xml". I already managed to render a "triangle mess" which vertexes are forming a reasonable shape :). The skeleton is already rendered. The vertexes and their "uv"s are stored in an interleaved array in "SkinPartition" after all, known so far, fields.

Attachment - https://www.dropbox.com/sh/b1kbicqvevrskgb/AAC9718qXw1pHUpYBk-idgV_a?dl=0

@neomonkeus neomonkeus added this to the Version 1.0 milestone Apr 12, 2016
@hexabits hexabits changed the title Support 10.2.0.0 Support 10.2.0.0, User Version 1 Aug 22, 2017
@hexabits
Copy link
Member

hexabits commented Aug 22, 2017

Copying the relevant discussion from #37 since it is now closed:

NIFs with Version = 10.2.0.0, User Version = 1
There are sample files from issue #34 (Skink.7z). I don't know which game they are from. They can't be opened with recent nif.xml. They need to enable those strange additions mentioned in #24. They have no vertexes and UVs in NiTriShapeData block but Triangles yes, so Nifskope reports errors with invalid indexes. As somebody at sf.net mentioned in #34 - the vertexes and UVs are probably stored in arrays at ends of NiSkinPartition blocks.
I have also some files from Blood Bowl game. They can be opened with recent nif.xml. They must not have those strange additions mentioned in #24.

The issue is not 10.2.0.0 support, it is that two separate games use 10.2.0.0 with a User Version == 1 with their own custom formats. There is no way to know which is which via nif.xml alone. They cannot both be described with:

<add name="" type="" ver1="10.2.0.0" ver2="10.2.0.0" userver="1" />

As they would clash. Any solution would have to be partially external to the NIF, in the parsers. We could arbitrarily increment one of the games internally to User Version == 2, we then define it as such in nif.xml. Then in the parser we have a compatibility layer which attempts to load a 10.2.0.0, User Version == 1 NIF as User Version == 2 if the first attempt fails. The same thing would be required for #37, but that involves only 10.1 vs 10.2 and so doesn't need any nif.xml changes and I closed it.

I will leave this open to highlight the compatibility layer idea for further discussion until a separate ticket is created.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants