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

Error importing .nif #627

Open
Maxandkon opened this issue Jan 7, 2024 · 2 comments
Open

Error importing .nif #627

Maxandkon opened this issue Jan 7, 2024 · 2 comments
Assignees
Labels
Bug Issue with specific functionality not working as intended but overall plugin is working.

Comments

@Maxandkon
Copy link

@niftools/blender-niftools-addon-reviewer -

Issue Overview

When I try to import some .nif files from Morrowind, some of them load perfectly, but some of them have a problem, either they give an error and nothing appear, or only the skeleton of the animation appears

Version Information

Blender Niftools Addon Version Info

0.1.1

Blender Version Info

4.0.2

Platform information

Windows 10

Context

I do 3D fan animation, and most of the models I'm interested in don't work. Judging by local my language Morrowind forums, I'm not the only one with this problem

Steps to Reproduce

[Ordered list of the steps required for recreating the issue, including settings]
#. Import > .nif > choose file

Expected Result

Loading the model

Actual Result

Nothing, or only the skeleton of the animation appears

Possible Fix

¿

Screenshot

Case when nothing happend
image
Case where only the skeleton of the animation appears
image

Logs and Files

Info Bar Output

image
¿

Console Output

Traceback (most recent call last):
  File "C:\Users\Maxandkon\AppData\Roaming\Blender Foundation\Blender\4.0\scripts\addons\io_scene_niftools\operators\nif_import_op.py", line 134, in execute
    return NifImport(self, context).execute()
  File "C:\Users\Maxandkon\AppData\Roaming\Blender Foundation\Blender\4.0\scripts\addons\io_scene_niftools\nif_import.py", line 131, in execute
    self.import_root(root)
  File "C:\Users\Maxandkon\AppData\Roaming\Blender Foundation\Blender\4.0\scripts\addons\io_scene_niftools\nif_import.py", line 159, in import_root
    b_obj = self.import_branch(root_block)
  File "C:\Users\Maxandkon\AppData\Roaming\Blender Foundation\Blender\4.0\scripts\addons\io_scene_niftools\nif_import.py", line 207, in import_branch
    b_obj = self.armaturehelper.import_armature(n_block)
  File "C:\Users\Maxandkon\AppData\Roaming\Blender Foundation\Blender\4.0\scripts\addons\io_scene_niftools\modules\nif_import\armature\__init__.py", line 225, in import_armature
    self.store_bind_matrices(n_armature)
  File "C:\Users\Maxandkon\AppData\Roaming\Blender Foundation\Blender\4.0\scripts\addons\io_scene_niftools\modules\nif_import\armature\__init__.py", line 162, in store_bind_matrices
    np_normals = np_normals @ np_diff33
ValueError: matmul: Input operand 1 has a mismatch in its core dimension 0, with gufunc signature (n?,k),(k,m?)->(n?,m?)
Traceback (most recent call last):
  File "C:\Users\Maxandkon\AppData\Roaming\Blender Foundation\Blender\4.0\scripts\addons\io_scene_niftools\operators\nif_import_op.py", line 134, in execute
    return NifImport(self, context).execute()
  File "C:\Users\Maxandkon\AppData\Roaming\Blender Foundation\Blender\4.0\scripts\addons\io_scene_niftools\nif_import.py", line 131, in execute
    self.import_root(root)
  File "C:\Users\Maxandkon\AppData\Roaming\Blender Foundation\Blender\4.0\scripts\addons\io_scene_niftools\nif_import.py", line 159, in import_root
    b_obj = self.import_branch(root_block)
  File "C:\Users\Maxandkon\AppData\Roaming\Blender Foundation\Blender\4.0\scripts\addons\io_scene_niftools\nif_import.py", line 234, in import_branch
    b_child = self.import_branch(n_child, b_armature=b_armature)
  File "C:\Users\Maxandkon\AppData\Roaming\Blender Foundation\Blender\4.0\scripts\addons\io_scene_niftools\nif_import.py", line 241, in import_branch
    b_children.extend(self.boundhelper.import_bounding_box(n_block))
  File "C:\Users\Maxandkon\AppData\Roaming\Blender Foundation\Blender\4.0\scripts\addons\io_scene_niftools\modules\nif_import\collision\bound.py", line 82, in import_bounding_box
    n_b_trans = n_bbox.translation
AttributeError: 'BoxBV' object has no attribute 'translation'

Blend File

Nif File

Google Drive
ashslave — example of fully working one
ashghoul — only appear animation skelet
ashvampire — nothing appear

If I must to provide additional files as part of the models/textures. or more error one .nif, please tell

Similar Known Issues

¿

Additional Information

As I said, it's quite strange, from the point of view that all these .nif-s are from the same game and even lie in the same folder, but many of them give similar errors, which is why some of them cannot be imported or it will not work correct

Thank you for your time! And for possible response!

@Maxandkon Maxandkon added the Bug Issue with specific functionality not working as intended but overall plugin is working. label Jan 7, 2024
@ChrisNonyminus
Copy link

I'm having this exact issue on Blender 3.6 as well. Can confirm it happens with Morrowinds "base_anim" nifs. (1st person ones load fine)

@ChrisNonyminus
Copy link

For base_anim, the problem line seems to be "np_normals = np_normals @ np_diff33". If I comment this out, the skeleton loads.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Issue with specific functionality not working as intended but overall plugin is working.
Projects
None yet
Development

No branches or pull requests

3 participants