-
Notifications
You must be signed in to change notification settings - Fork 26
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
Skyrim Nifs and update_skin_partition spell: missing functionality vs Nifskope spell 'Make All Skin Partitions' #5
Comments
It appears that Nifskope automatically sets the _BSDismemberSkinInstance partitions settings to the same values regardless of the partitions. The Pyffi spell ignores them entirely. With that issue in mind, I've assembled this dictionary of partition information from fallout meshes: {0: {'pf_editor_visible' : 1, 'reserved_bits_1' : 0, 'pf_start_net_boneset' : 0, 'body_part' : 'BP_TORSO'}, Is this data that should be added to the xml description of _BSDismemberSkinInstance partitions, or added to the pyffi spell? I can assemble a similar dictionary for Skyrim meshes. |
And all that I've found so far for the Skryim partitions {32: {'pf_editor_visible' : 1, 'reserved_bits_1' : 0, 'pf_start_net_boneset' : 0, 'body_part' : 'SBP_32_BODY'}, |
After my BoneWeight Copy tool adds a new NifFormat.BSDismemberSkinInstance block and assigns it as a skininstance, etc I use the following call to build the skin partitions:
niBlock.update_skin_partition(maxbonesperpartition=max_part_bones, maxbonespervertex=max_vert_bones, trianglepartmap=partition_map)
This resulting nif, on export, fails to properly render in the construction kit or in-game. However, running the Nifskope spell ''Make All Skin Partitions' fixes the mesh and allows it to be properly rendered in game.
I have yet to identify all of the changes made by the Nifskope spell, but one set of changes modifies the following properties
_BSDismemberSkinInstance.partitions.pf_editor_visible = 1
_BSDismemberSkinInstance.partitions.reserved_bits_1 = 0
_BSDismemberSkinInstance.partitions.pf_start_net_boneset = 1
Now, nifskope always sets these properties to this value, which might actually be a Nifskope bug.
Nifskope makes some additional modifications to the nif that I have not yet identified that allow newly rigged Skyrim meshes to be usable in game.
The text was updated successfully, but these errors were encountered: