Jump to content

Blender Nif Scripts


cooltrickle

Recommended Posts

Following the advice given by "Blender NIF Import - Export Tutorial by Jen and 2pac4eva7", I installed the following software:

 

Python 2.6.6 (32-bit)

PyFFI 2.1.10 (32-bit)

Blender 2.49b

Blender Nif Scripts 2.5.8

Nifskope (1.1.0-rc1+throttlekitty's nif.xml)

I'm running Win 7, btw

 

Unfortunately, I still cannot import nifs into Blender. Everytime I get python console errors:

 

 

Blender NIF Scripts 2.5.5 (running on Blender 249, PyFFI 2.1.5)

Traceback (most recent call last):

File "C:\Blender\.blender\scripts\bpymodules\nif_common.py", line 1227, in gui

_button_event

self.gui_exit()

File "C:\Blender\.blender\scripts\bpymodules\nif_common.py", line 1579, in gui

_exit

self.callback(**self.config)

File "C:\Blender\.blender\scripts\import\import_nif.py", line 3750, in config_

callback

importer = NifImport(**config)

File "C:\Blender\.blender\scripts\import\import_nif.py", line 170, in __init__

 

data.inspect(niffile)

File "C:\Python26\lib\site-packages\pyffi\formats\nif\__init__.py", line 1258,

in inspect

self.header.read(stream, data=self)

File "C:\Python26\lib\site-packages\pyffi\object_models\xml\struct_.py", line

354, in read

attr_value.read(stream, data)

File "C:\Python26\lib\site-packages\pyffi\object_models\xml\array.py", line 30

0, in read

elem.read(stream, data)

File "C:\Python26\lib\site-packages\pyffi\object_models\common.py", line 691,

in read

% (length, stream.tell()))

ValueError: string too long (0x6E0C0000 at 0x0000003A)

 

 

 

Blender NIF Scripts 2.5.5 (running on Blender 249, PyFFI 2.1.10)

Traceback (most recent call last):

File "C:\Blender\.blender\scripts\bpymodules\nif_common.py", line 1227, in gui

_button_event

self.gui_exit()

File "C:\Blender\.blender\scripts\bpymodules\nif_common.py", line 1579, in gui

_exit

self.callback(**self.config)

File "C:\Blender\.blender\scripts\import\import_nif.py", line 3750, in config_

callback

importer = NifImport(**config)

File "C:\Blender\.blender\scripts\import\import_nif.py", line 176, in __init__

 

data.read(niffile)

File "C:\Python26\lib\site-packages\pyffi\formats\nif\__init__.py", line 1382,

in read

"Unknown block type '%s'." % block_type)

ValueError: Unknown block type 'bhkCompressedMeshShape'.

 

 

 

Blender NIF Scripts 2.5.8 (running on Blender 249, PyFFI 2.1.10)

Traceback (most recent call last):

File "C:\Blender\.blender\scripts\bpymodules\nif_common.py", line 1229, in gui

_button_event

self.gui_exit()

File "C:\Blender\.blender\scripts\bpymodules\nif_common.py", line 1589, in gui

_exit

self.callback(**self.config)

File "C:\Blender\.blender\scripts\import\import_nif.py", line 3769, in config_

callback

importer = NifImport(**config)

File "C:\Blender\.blender\scripts\import\import_nif.py", line 176, in __init__

 

data.read(niffile)

File "C:\Python26\lib\site-packages\pyffi\formats\nif\__init__.py", line 1382,

in read

"Unknown block type '%s'." % block_type)

ValueError: Unknown block type 'bhkCompressedMeshShape'.

 

 

I think the first time, I didn't set up the nif properly before I attempted to import with Blender. The other times, the nif was opening in NifSkope with its textures, before I set the User Values to 11 and 34, and removed branches referring to Shaders (it's possible I'm not doing this properly). I saved the files as a .nif and tried to import with Blender with the following settings selected:

 

*Scale Correction: 100.00

*Import Animation

*Import Skeleton Only + Parent Selected

*Import Geometry Only + Parent To Selected Armature

*Save Embedded Textures As DDS

*Realign Bone Tail Only

*Apply Skin Deformation

 

The file in question is .data/meshes/clutter/dwemer/dwedresser01.nif, which is a small cupboard on legs. Perhaps some of the settings are not needed? I'd appreciate if someone could try and import this object into Blender and let me know what settings they used.

Link to comment
Share on other sites

I changed the PyFFI from 2.1.10 to 2.1.11, as it says here, and had another go. I removed the block in NifSkope that caused the following error ValueError: Unknown block type 'bhkCompressedMeshShape', which I had yesterday. The nif was imported into Blender but not without the error below:

 

 

Blender NIF Scripts 2.5.8 (running on Blender 249, PyFFI 2.1.11)

pyffi.toaster:INFO:--- fix_mergeskeletonroots ---

pyffi.toaster:INFO:--- fix_sendgeometriestobindposition ---

pyffi.toaster:INFO:--- fix_senddetachedgeometriestonodeposition ---

pyffi.toaster:INFO:--- fix_sendbonestobindposition ---

pyffi.toaster:INFO:--- fix_scale ---

pyffi.toaster:INFO: scaling by factor 0.010000

pyffi.toaster:INFO: ~~~ BSFadeNode [DweDresser01] ~~~

pyffi.toaster:INFO: ~~~ BSXFlags [bSX] ~~~

pyffi.toaster:INFO: ~~~ NiControllerManager [] ~~~

pyffi.toaster:INFO: ~~~ NiMultiTargetTransformController [] ~~~

pyffi.toaster:INFO: ~~~ NiControllerSequence [Open] ~~~

pyffi.toaster:INFO: ~~~ NiTextKeyExtraData [] ~~~

pyffi.toaster:INFO: ~~~ NiTransformInterpolator [] ~~~

pyffi.toaster:INFO: ~~~ NiTransformData [] ~~~

pyffi.toaster:INFO: ~~~ NiTransformInterpolator [] ~~~

pyffi.toaster:INFO: ~~~ NiControllerSequence [Close] ~~~

pyffi.toaster:INFO: ~~~ NiTextKeyExtraData [] ~~~

pyffi.toaster:INFO: ~~~ NiTransformInterpolator [] ~~~

pyffi.toaster:INFO: ~~~ NiTransformData [] ~~~

pyffi.toaster:INFO: ~~~ NiTransformInterpolator [] ~~~

pyffi.toaster:INFO: ~~~ NiDefaultAVObjectPalette [] ~~~

pyffi.toaster:INFO: ~~~ bhkCollisionObject [] ~~~

pyffi.toaster:INFO: ~~~ bhkRigidBodyT [] ~~~

pyffi.toaster:INFO: ~~~ bhkMoppBvTreeShape [] ~~~

pyffi.toaster:INFO: ~~~ NiTriShape [DweDresser01:0] ~~~

pyffi.toaster:INFO: ~~~ NiTriShapeData [] ~~~

pyffi.toaster:INFO: ~~~ NiTriShape [DweDresser01:6] ~~~

pyffi.toaster:INFO: ~~~ NiTriShapeData [] ~~~

pyffi.toaster:INFO: ~~~ NiNode [DoorLeft] ~~~

pyffi.toaster:INFO: ~~~ bhkCollisionObject [] ~~~

pyffi.toaster:INFO: ~~~ bhkRigidBody [] ~~~

pyffi.toaster:INFO: ~~~ bhkConvexVerticesShape [] ~~~

pyffi.toaster:INFO: ~~~ NiTriShape [DoorLeft:6] ~~~

pyffi.toaster:INFO: ~~~ NiTriShapeData [] ~~~

pyffi.toaster:INFO: ~~~ NiNode [DoorRight] ~~~

pyffi.toaster:INFO: ~~~ bhkCollisionObject [] ~~~

pyffi.toaster:INFO: ~~~ bhkRigidBody [] ~~~

pyffi.toaster:INFO: ~~~ bhkConvexVerticesShape [] ~~~

pyffi.toaster:INFO: ~~~ NiTriShape [DoorRight:6] ~~~

pyffi.toaster:INFO: ~~~ NiTriShapeData [] ~~~

Traceback (most recent call last):

File "C:\Blender\.blender\scripts\bpymodules\nif_common.py", line 1229, in gui

_button_event

self.gui_exit()

File "C:\Blender\.blender\scripts\bpymodules\nif_common.py", line 1589, in gui

_exit

self.callback(**self.config)

File "C:\Blender\.blender\scripts\import\import_nif.py", line 3769, in config_

callback

importer = NifImport(**config)

File "C:\Blender\.blender\scripts\import\import_nif.py", line 274, in __init__

 

self.import_root(root)

File "C:\Blender\.blender\scripts\import\import_nif.py", line 360, in import_r

oot

b_obj = self.import_branch(root_block)

File "C:\Blender\.blender\scripts\import\import_nif.py", line 551, in import_b

ranch

n_child, b_armature=b_armature, n_armature=n_armature)

File "C:\Blender\.blender\scripts\import\import_nif.py", line 568, in import_b

ranch

collision_objs = self.import_bhk_shape(bhk_body)

File "C:\Blender\.blender\scripts\import\import_nif.py", line 3044, in import_

bhk_shape

collision_objs = self.import_bhk_shape(bhkshape.shape)

File "C:\Blender\.blender\scripts\import\import_nif.py", line 3012, in import_

bhk_shape

ob.addProperty("HavokMaterial", self.HAVOK_MATERIAL[bhkshape.material], "STR

ING")

IndexError: list index out of range

 

 

 

Looking at the nif in Blender, you can see that the two doors of the cupboard haven't imported properly; one is missing and the other one is sitting below the cupboard.

 

 

 

This is how it looked in NifSkope, before importing with Blender.

 

 

Edited by cooltrickle
Link to comment
Share on other sites

  • 5 months later...

Hello cooltrickle i am encountering the same problem, i am trying to import nord plate armor into blender and it says python scipt error and there is nothing in blender. the script says unkown

block type '%s' _"%block_type>

valueerror: unknown block type 'BSInvMarker'.

you say that you removed the block in nifskope how ?

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...