NIF Objects | Compound Types | Enum Types | Basic Types | File Versions

Hierarchy | List

NIF Object List

Name Description
AbstractAdditionalGeometryData
AvoidNode Morrowind specific.
BSAnimNote Bethesda-specific object.
BSAnimNotes Bethesda-specific object.
BSBehaviorGraphExtraData Links a nif with a Havok Behavior .hkx animation file
BSBlastNode Bethesda-Specific node.
BSBoneLODExtraData Unknown
BSBound Bethesda-specific collision bounding box for skeletons.
BSClothExtraData Fallout 4 Cloth data
BSConnectPoint::Children Fallout 4 Item Slot Child
BSConnectPoint::Parents Fallout 4 Item Slot Parent
BSDamageStage Bethesda-Specific node.
BSDebrisNode Bethesda-Specific node.
BSDecalPlacementVectorExtraData Bethesda-specific extra data. Lists locations and normals on a mesh that are appropriate for decal placement.
BSDismemberSkinInstance Bethesda-specific skin instance.
BSDistantObjectLargeRefExtraData Large ref flag.
BSDistantTreeShaderProperty Bethesda-specific property.
BSDynamicTriShape
BSEffectShaderProperty Bethesda effect shader property for Skyrim and later.
BSEffectShaderPropertyColorController This controller is used to animate colors in BSEffectShaderProperty.
BSEffectShaderPropertyFloatController This controller is used to animate float variables in BSEffectShaderProperty.
BSExtraData Fallout 4 Extra Data
BSEyeCenterExtraData Fallout 4 Eye Center Data
BSFadeNode Bethesda-specific fade node.
BSFrustumFOVController Bethesda-specific time controller.
BSFurnitureMarker Unknown. Marks furniture sitting positions?
BSFurnitureMarkerNode Furniture Marker for actors
BSInvMarker Orientation marker for Skyrim's inventory view.
How to show the nif in the player's inventory.
Typically attached to the root node of the nif tree.
If not present, then Skyrim will still show the nif in inventory,
using the default values.
Name should be 'INV' (without the quotes).
For rotations, a short of "4712" appears as "4.712" but "959" appears as "0.959" meshes\weapons\daedric\daedricbowskinned.nif
BSKeyframeController An extended keyframe controller.
BSLODTriShape A variation on NiTriShape, for visibility control over vertex groups.
BSLagBoneController A controller that trails a bone behind an actor.
BSLeafAnimNode Unknown, related to trees.
BSLightingShaderProperty Bethesda shader property for Skyrim and later.
BSLightingShaderPropertyColorController This controller is used to animate colors in BSLightingShaderProperty.
BSLightingShaderPropertyFloatController This controller is used to animate float variables in BSLightingShaderProperty.
BSMasterParticleSystem Bethesda-Specific particle system.
BSMaterialEmittanceMultController Bethesda-Specific time controller.
BSMeshLODTriShape Fallout 4 LOD Tri Shape
BSMultiBound Bethesda-specific object.
BSMultiBoundAABB Bethesda-specific object.
BSMultiBoundData Abstract base type for bounding data.
BSMultiBoundNode Bethesda-specific node.
BSMultiBoundOBB Oriented bounding box.
BSMultiBoundSphere Bethesda-specific object.
BSNiAlphaPropertyTestRefController
BSOrderedNode Bethesda-Specific node.
BSPSysArrayEmitter Particle emitter that uses a node, its children and subchildren to emit from. Emission will be evenly spread along points from nodes leading to their direct parents/children only.
BSPSysHavokUpdateModifier
BSPSysInheritVelocityModifier
BSPSysLODModifier
BSPSysMultiTargetEmitterCtlr Particle system (multi?) emitter controller.
BSPSysRecycleBoundModifier
BSPSysScaleModifier
BSPSysSimpleColorModifier Bethesda-specific particle modifier.
BSPSysStripUpdateModifier Bethesda-Specific (mesh?) Particle System Modifier.
BSPSysSubTexModifier Similar to a Flip Controller, this handles particle texture animation on a single texture atlas
BSPackedAdditionalGeometryData
BSPackedCombinedGeomDataExtra Fallout 4 Packed Combined Geometry Data.
Geometry is baked into the file and given a list of transforms to position each copy.
BSPackedCombinedSharedGeomDataExtra Fallout 4 Packed Combined Shared Geometry Data.
Geometry is NOT baked into the file. It is instead a reference to the shape via a Shape ID (currently undecoded)
which loads the geometry via the STAT form for the NIF.
BSParentVelocityModifier Particle modifier that adds a blend of object space translation and rotation to particles born in world space.
BSPositionData Fallout 4 Positional Data
BSProceduralLightningController Skyrim, Paired with dummy TriShapes, this controller generates lightning shapes for special effects.
First interpolator controls Generation.
BSRangeNode Bethesda-Specific node.
BSRefractionFirePeriodController Bethesda-specific time controller.
BSRefractionStrengthController Bethesda-Specific time controller.
BSRotAccumTransfInterpolator
BSSegmentedTriShape Bethesda-specific AV object.
BSShaderLightingProperty Bethesda-specific property.
BSShaderNoLightingProperty Bethesda-specific property.
BSShaderPPLightingProperty Bethesda-specific property.
BSShaderProperty Bethesda-specific property.
BSShaderTextureSet Bethesda-specific Texture Set.
BSSkin::BoneData Fallout 4 Bone Data
BSSkin::Instance Fallout 4 Skin Instance
BSSkyShaderProperty Skyrim Sky shader block.
BSStripPSysData Bethesda-Specific (mesh?) Particle System Data.
BSStripParticleSystem Bethesda-Specific (mesh?) Particle System.
BSSubIndexTriShape Fallout 4 Sub-Index Tri Shape
BSTreadTransfInterpolator Bethesda-specific interpolator.
BSTreeNode Node for handling Trees, Switches branch configurations for variation?
BSTriShape Fallout 4 Tri Shape
BSValueNode Bethesda-specific node. Found on fxFire effects
BSWArray Bethesda-specific extra data.
BSWaterShaderProperty Skyrim water shader property, different from "WaterShaderProperty" seen in Fallout.
BSWindModifier Particle Modifier that uses the wind value from the gamedata to alter the path of particles.
BSXFlags Controls animation and collision. Integer holds flags:
Bit 0 : enable havok, bAnimated(Skyrim)
Bit 1 : enable collision, bHavok(Skyrim)
Bit 2 : is skeleton nif?, bRagdoll(Skyrim)
Bit 3 : enable animation, bComplex(Skyrim)
Bit 4 : FlameNodes present, bAddon(Skyrim)
Bit 5 : EditorMarkers present, bEditorMarker(Skyrim)
Bit 6 : bDynamic(Skyrim)
Bit 7 : bArticulated(Skyrim)
Bit 8 : bIKTarget(Skyrim)/needsTransformUpdates
Bit 9 : bExternalEmit(Skyrim)
Bit 10: bMagicShaderParticles(Skyrim)
Bit 11: bLights(Skyrim)
Bit 12: bBreakable(Skyrim)
Bit 13: bSearchedBreakable(Skyrim) .. Runtime only?
CStreamableAssetData
DistantLODShaderProperty Bethesda-specific property.
FxButton Unknown.
FxRadioButton Unknown.
FxWidget Firaxis-specific UI widgets?
HairShaderProperty Bethesda-specific property.
Lighting30ShaderProperty Bethesda-specific property.
Ni3dsAlphaAnimator Unknown.
Ni3dsAnimationNode Unknown. Only found in 2.3 nifs.
Ni3dsColorAnimator Unknown!
Ni3dsMorphShape Unknown!
Ni3dsParticleSystem Unknown!
Ni3dsPathController Unknown!
NiAVObject Abstract audio-visual base class from which all of Gamebryo's scene graph objects inherit.
NiAVObjectPalette Abstract base class for indexing NiAVObject by name.
NiAccumulator
NiAdditionalGeometryData
NiAlphaController Animates the alpha value of a property using an interpolator.
NiAlphaProperty Transparency. Flags 0x00ED.
NiAmbientLight Ambient light source.
NiAutoNormalParticles LEGACY (pre-10.1). NiParticles which do not house normals and generate them at runtime.
NiAutoNormalParticlesData Particle system data object (with automatic normals?).
NiBSAnimationNode Bethesda-specific extension of Node with animation properties stored in the flags, often 42?
NiBSBoneLODController A simple LOD controller for bones.
NiBSPArrayController A particle system controller, used by BS in conjunction with NiBSParticleNode.
NiBSParticleNode Unknown.
NiBSplineBasisData Contains an NiBSplineBasis for use in interpolation of open, uniform B-Splines.
NiBSplineColorEvaluator
NiBSplineCompColorEvaluator
NiBSplineCompFloatEvaluator
NiBSplineCompFloatInterpolator NiBSplineFloatInterpolator plus the information required for using compact control points.
NiBSplineCompPoint3Evaluator
NiBSplineCompPoint3Interpolator NiBSplinePoint3Interpolator plus the information required for using compact control points.
NiBSplineCompTransformEvaluator
NiBSplineCompTransformInterpolator NiBSplineTransformInterpolator plus the information required for using compact control points.
NiBSplineData Contains one or more sets of control points for use in interpolation of open, uniform B-Splines, stored as either float or compact.
NiBSplineEvaluator
NiBSplineFloatEvaluator
NiBSplineFloatInterpolator Uses B-Splines to animate a float value over time.
NiBSplineInterpolator Abstract base class for interpolators storing data via a B-spline.
NiBSplinePoint3Evaluator
NiBSplinePoint3Interpolator Uses B-Splines to animate an NiPoint3 value over time.
NiBSplineTransformEvaluator
NiBSplineTransformInterpolator Supports the animation of position, rotation, and scale using an NiQuatTransform.
The NiQuatTransform can be an unchanging pose or interpolated from B-Spline control point channels.
NiBezierMesh LEGACY (pre-10.1)
Unknown
NiBezierTriangle4 LEGACY (pre-10.1)
Sub data of NiBezierMesh
NiBillboardNode These nodes will always be rotated to face the camera creating a billboard effect for any attached objects.

In pre-10.1.0.0 the Flags field is used for BillboardMode.
Bit 0: hidden
Bits 1-2: collision mode
Bit 3: unknown (set in most official meshes)
Bits 5-6: billboard mode

Collision modes:
00 NONE
01 USE_TRIANGLES
10 USE_OBBS
11 CONTINUE

Billboard modes:
00 ALWAYS_FACE_CAMERA
01 ROTATE_ABOUT_UP
10 RIGID_FACE_CAMERA
11 ALWAYS_FACE_CENTER
NiBinaryExtraData Binary extra data object. Used to store tangents and bitangents in Oblivion.
NiBinaryVoxelData Voxel data object.
NiBinaryVoxelExtraData Voxel extra data object.
NiBlendBoolInterpolator Blends bool values together.
NiBlendFloatInterpolator Blends float values together.
NiBlendInterpolator Abstract base class for all NiInterpolators that blend the results of sub-interpolators together to compute a final weighted value.
NiBlendPoint3Interpolator Blends NiPoint3 values together.
NiBlendTransformInterpolator Blends NiQuatTransform values together.
NiBone A NiNode used as a skeleton bone?
NiBoneLODController DEPRECATED (20.5), Replaced by NiSkinningLODController.
Level of detail controller for bones. Priority is arranged from low to high.
NiBoolData Wrapper for boolean animation keys.
NiBoolEvaluator
NiBoolInterpController Abstract base class for all NiInterpControllers that use a NiInterpolator to animate their target boolean value.
NiBoolInterpolator Uses NiBoolKeys to animate a bool value over time.
NiBoolTimelineEvaluator
NiBoolTimelineInterpolator Uses NiBoolKeys to animate a bool value over time.
Unlike NiBoolInterpolator, it ensures that keys have not been missed between two updates.
NiBooleanExtraData Boolean extra data.
NiCamera Camera object.
NiClod A shape node that holds continuous level of detail information.
Seems to be specific to Freedom Force.
NiClodData Holds mesh data for continuous level of detail shapes.
Pesumably a progressive mesh with triangles specified by edge splits.
Seems to be specific to Freedom Force.
The structure of this is uncertain and highly experimental at this point.
NiClodSkinInstance A copy of NISkinInstance for use with NiClod meshes.
NiCollisionData Collision box.
NiCollisionObject This is the most common collision object found in NIF files. It acts as a real object that
is visible and possibly (if the body allows for it) interactive. The node itself
is simple, it only has three properties.
For this type of collision object, bhkRigidBody or bhkRigidBodyT is generally used.
NiColorData Wrapper for color animation keys.
NiColorEvaluator
NiColorExtraData Extra data in the form of NiColorA (red, green, blue, alpha).
NiConstBoolEvaluator
NiConstColorEvaluator
NiConstFloatEvaluator
NiConstPoint3Evaluator
NiConstQuaternionEvaluator
NiConstTransformEvaluator
NiControllerManager Controls animation sequences on a specific branch of the scene graph.
NiControllerSequence Root node in Gamebryo .kf files (version 10.0.1.0 and up).
NiDataStream
NiDefaultAVObjectPalette NiAVObjectPalette implementation. Used to quickly look up objects by name.
NiDirectionalLight Directional light source.
NiDitherProperty NiDitherProperty allows the application to turn the dithering of interpolated colors and fog values on and off.
NiDynamicEffect Abstract base class for dynamic effects such as NiLights or projected texture effects.
NiEnvMappedTriShape Unknown
NiEnvMappedTriShapeData Holds mesh data using a list of singular triangles.
NiEvaluator
NiExtraData A generic extra data object.
NiExtraDataController Abstract base class for all extra data controllers.
NiInterpController::GetCtlrID() string format:
'%s'
Where %s = Value of "Extra Data Name"
NiFlipController Changes the image a Map (TexDesc) will use. Uses a float interpolator to animate the texture index.
Often used for performing flipbook animation.
NiFloatData Wrapper for 1D (one-dimensional) floating point animation keys.
NiFloatEvaluator
NiFloatExtraData Extra float data.
NiFloatExtraDataController Animates an NiFloatExtraData object attached to an NiAVObject.
NiInterpController::GetCtlrID() string format is same as parent.
NiFloatInterpController Abstract base class for all NiInterpControllers that use an NiInterpolator to animate their target float value.
NiFloatInterpolator Uses NiFloatKeys to animate a float value over time.
NiFloatsExtraData Extra float array data.
NiFloatsExtraDataController Animates an NiFloatsExtraData object attached to an NiAVObject.
NiInterpController::GetCtlrID() string format:
'%s[%d]'
Where %s = Value of "Extra Data Name", %d = Value of "Floats Extra Data Index"
NiFloatsExtraDataPoint3Controller Animates an NiFloatsExtraData object attached to an NiAVObject.
NiInterpController::GetCtlrID() string format:
'%s[%d]'
Where %s = Value of "Extra Data Name", %d = Value of "Floats Extra Data Index"
NiFogProperty NiFogProperty allows the application to enable, disable and control the appearance of fog.
NiFurSpringController
NiGeomMorpherController DEPRECATED (20.5), replaced by NiMorphMeshModifier.
Time controller for geometry morphing.
NiGeometry Describes a visible scene element with vertices like a mesh, a particle system, lines, etc.
NiGeometryData Mesh data: vertices, vertex normals, etc.
NiGravity LEGACY (pre-10.1) particle modifier. Applies a gravitational field on the particles.
NiImage LEGACY (pre-10.1)
NiInstancingMeshModifier Mesh modifier that provides per-frame instancing capabilities in Gamebryo.
NiIntegerExtraData Extra integer data.
NiIntegersExtraData Extra integer array data.
NiInterpController Abstract base class for all NiTimeController objects using NiInterpolator objects to animate their target objects.
NiInterpolator Abstract base class for all interpolators of bool, float, NiQuaternion, NiPoint3, NiColorA, and NiQuatTransform data.
NiKeyBasedEvaluator
NiKeyBasedInterpolator Abstract base class for interpolators that use NiAnimationKeys (Key, KeyGrp) for interpolation.
NiKeyframeController DEPRECATED (10.2), RENAMED (10.2) to NiTransformController
A time controller object for animation key frames.
NiKeyframeData DEPRECATED (10.2), RENAMED (10.2) to NiTransformData.
Wrapper for transformation animation keys.
NiLODData Abstract class used for different types of LOD selections.
NiLODNode Level of detail selector. Links to different levels of detail of the same model, used to switch a geometry at a specified distance.
NiLight Abstract base class that represents light sources in a scene graph.
For Bethesda Stream 130 (FO4), NiLight now directly inherits from NiAVObject.
NiLightColorController Animates the ambient, diffuse and specular colors of an NiLight.
NiInterpController::GetCtlrID() string formats:
['Diffuse', 'Ambient'] (Depending on "Target Color")
NiLightDimmerController Unknown controller.
NiLightIntensityController Unknown controller
NiLightRadiusController
NiLines Wireframe geometry.
NiLinesData Wireframe geometry data.
NiLookAtController DEPRECATED (10.2), REMOVED (20.5)
Replaced by NiTransformController and NiLookAtInterpolator.
NiLookAtEvaluator
NiLookAtInterpolator NiLookAtInterpolator rotates an object so that it always faces a target object.
NiMaterialColorController Time controller for material color. Flags are used for color selection in versions below 10.1.0.0.
Bits 4-5: Target Color (00 = Ambient, 01 = Diffuse, 10 = Specular, 11 = Emissive)
NiInterpController::GetCtlrID() string formats:
['AMB', 'DIFF', 'SPEC', 'SELF_ILLUM'] (Depending on "Target Color")
NiMaterialProperty Describes the surface properties of an object e.g. translucency, ambient color, diffuse color, emissive color, and specular color.
NiMesh
NiMeshHWInstance An instance of a hardware-instanced mesh in a scene graph.
NiMeshModifier Base class for mesh modifiers.
NiMeshPSysData Particle meshes data.
NiMeshParticleSystem Particle system.
NiMorphController Unknown! Used by Daoc->'healing.nif'.
NiMorphData DEPRECATED (20.5), replaced by NiMorphMeshModifier.
Geometry morphing data.
NiMorphMeshModifier Performs linear-weighted blending between a set of target data streams.
NiMorphWeightsController Manipulates a mesh with the semantic MORPHWEIGHTS using an NiMorphMeshModifier.
NiMorpherController Unknown! Used by Daoc.
NiMultiTargetTransformController DEPRECATED (20.6)
NiMultiTextureProperty
NiNode Generic node object for grouping.
NiObject Abstract object type.
NiObjectNET Abstract base class for NiObjects that support names, extra data, and time controllers.
NiPSAlignedQuadGenerator A mesh modifier that uses particle system data to generate aligned quads for each particle.
NiPSBombForce Applies an explosive force to particles.
NiPSBoundUpdater Updates the bounding volume for an NiPSParticleSystem object.
NiPSBoxEmitter A particle emitter that emits particles from a rectangular volume.
NiPSCollider Abstract base class for all particle colliders.
NiPSCylinderEmitter A particle emitter that emits particles from a cylindrical volume.
NiPSDragForce Applies a linear drag force to particles.
NiPSEmitParticlesCtlr Animates particle emission and birth rate.
NiPSEmitter Abstract base class for all particle emitters.
NiPSEmitterCtlr Abstract base class for all particle emitter time controllers.
NiPSEmitterDeclinationCtlr Animates the declination value on an NiPSEmitter object.
NiPSEmitterDeclinationVarCtlr Animates the declination variation value on an NiPSEmitter object.
NiPSEmitterFloatCtlr Abstract base class for controllers that animate a floating point value on an NiPSEmitter object.
NiPSEmitterLifeSpanCtlr Animates the lifespan value on an NiPSEmitter object.
NiPSEmitterPlanarAngleCtlr Animates the planar angle value on an NiPSEmitter object.
NiPSEmitterPlanarAngleVarCtlr Animates the planar angle variation value on an NiPSEmitter object.
NiPSEmitterRadiusCtlr Animates the size value on an NiPSEmitter object.
NiPSEmitterRotAngleCtlr Animates the rotation angle value on an NiPSEmitter object.
NiPSEmitterRotAngleVarCtlr Animates the rotation angle variation value on an NiPSEmitter object.
NiPSEmitterRotSpeedCtlr Animates the rotation speed value on an NiPSEmitter object.
NiPSEmitterRotSpeedVarCtlr Animates the rotation speed variation value on an NiPSEmitter object.
NiPSEmitterSpeedCtlr Animates the speed value on an NiPSEmitter object.
NiPSFacingQuadGenerator A mesh modifier that uses particle system data to generate camera-facing quads.
NiPSForce Abstract base class for all particle forces.
NiPSForceActiveCtlr Animates whether or not an NiPSForce object is active.
NiPSForceBoolCtlr Abstract base class for controllers that animate a Boolean value on an NiPSForce object.
NiPSForceCtlr Abstract base class for all particle force time controllers.
NiPSForceFloatCtlr Abstract base class for controllers that animate a floating point value on an NiPSForce object.
NiPSGravityForce Applies a gravitational force to particles.
NiPSGravityStrengthCtlr Animates the strength value of an NiPSGravityForce object.
NiPSMeshEmitter Emits particles from one or more NiMesh objects. A random mesh emitter is selected for each particle emission.
NiPSMeshParticleSystem Represents a particle system that uses mesh particles instead of sprite-based particles.
NiPSParticleSystem Represents a particle system.
NiPSPlanarCollider A planar collider for particles.
NiPSResetOnLoopCtlr Calls ResetParticleSystem on an NiPSParticleSystem target upon looping.
NiPSSimulator The mesh modifier that performs all particle system simulation.
NiPSSimulatorCollidersStep Encapsulates a floodgate kernel that simulates particle colliders.
NiPSSimulatorFinalStep Encapsulates a floodgate kernel that updates particle positions and ages. As indicated by its name, this step should be attached last in the NiPSSimulator mesh modifier.
NiPSSimulatorForcesStep Encapsulates a floodgate kernel that simulates particle forces.
NiPSSimulatorGeneralStep Encapsulates a floodgate kernel that updates particle size, colors, and rotations.
NiPSSimulatorMeshAlignStep Encapsulates a floodgate kernel that updates mesh particle alignment and transforms.
NiPSSimulatorStep Abstract base class for a single step in the particle system simulation process. It has no seralized data.
NiPSSpawner Creates a new particle whose initial parameters are based on an existing particle.
NiPSSphereEmitter A particle emitter that emits particles from a spherical volume.
NiPSSphericalCollider A spherical collider for particles.
NiPSVolumeEmitter Abstract base class for particle emitters that emit particles from a volume.
NiPSysAgeDeathModifier Particle modifier that controls and updates the age of particles in the system.
NiPSysAirFieldAirFrictionCtlr Particle system controller for air field air friction.
NiPSysAirFieldInheritVelocityCtlr Particle system controller for air field inherit velocity.
NiPSysAirFieldModifier Particle system modifier, updates the particle velocity to simulate the effects of air movements like wind, fans, or wake.
NiPSysAirFieldSpreadCtlr Particle system controller for air field spread.
NiPSysBombModifier Particle modifier that applies an explosive force to particles.
NiPSysBoundUpdateModifier Particle modifier that creates and updates bound volumes.
NiPSysBoxEmitter Particle emitter that uses points within a defined Box shape to emit from.
NiPSysCollider Particle system collider.
NiPSysColliderManager Particle modifier that adds a defined shape to act as a collision object for particles to interact with.
NiPSysColorModifier Particle modifier that adds keyframe data to modify color/alpha values of particles over time.
NiPSysCylinderEmitter Particle emitter that uses points within a defined Cylinder shape to emit from.
NiPSysData Particle system data.
NiPSysDragFieldModifier Particle system modifier, implements a drag field force for particles.
NiPSysDragModifier Particle modifier that applies a linear drag force to particles.
NiPSysEmitter Abstract base class for all particle system emitters.
NiPSysEmitterCtlr Particle system emitter controller.
NiInterpController::GetInterpolatorID() string format:
['BirthRate', 'EmitterActive'] (for "Interpolator" and "Visibility Interpolator" respectively)
NiPSysEmitterCtlrData DEPRECATED (10.2). Particle system emitter controller data.
NiPSysEmitterDeclinationCtlr Animates the declination value on an NiPSysEmitter object.
NiPSysEmitterDeclinationVarCtlr Animates the declination variation value on an NiPSysEmitter object.
NiPSysEmitterInitialRadiusCtlr Animates the size value on an NiPSysEmitter object.
NiPSysEmitterLifeSpanCtlr Animates the lifespan value on an NiPSysEmitter object.
NiPSysEmitterPlanarAngleCtlr Particle system controller for emitter planar angle.
NiPSysEmitterPlanarAngleVarCtlr Particle system controller for emitter planar angle variation.
NiPSysEmitterSpeedCtlr Animates the speed value on an NiPSysEmitter object.
NiPSysFieldAttenuationCtlr Particle system controller for force field attenuation.
NiPSysFieldMagnitudeCtlr Particle system controller for force field magnitude.
NiPSysFieldMaxDistanceCtlr Particle system controller for force field maximum distance.
NiPSysFieldModifier Base for all force field particle modifiers.
NiPSysGravityFieldModifier Particle system modifier, implements a gravity field force for particles.
NiPSysGravityModifier Particle modifier that applies a gravitational force to particles.
NiPSysGravityStrengthCtlr Animates the strength value of an NiPSysGravityModifier.
NiPSysGrowFadeModifier Particle modifier that controls the time it takes to grow and shrink a particle.
NiPSysInitialRotAngleCtlr Particle system controller for emitter initial rotation angle.
NiPSysInitialRotAngleVarCtlr Particle system controller for emitter initial rotation angle variation.
NiPSysInitialRotSpeedCtlr Particle system controller for emitter initial rotation speed.
NiPSysInitialRotSpeedVarCtlr Particle system controller for emitter initial rotation speed variation.
NiPSysMeshEmitter Particle emitter that uses points on a specified mesh to emit from.
NiPSysMeshUpdateModifier Particle modifier that updates mesh particles using the age of each particle.
NiPSysModifier Abstract base class for all particle system modifiers.
NiPSysModifierActiveCtlr A particle system modifier controller that animates active/inactive state for particles.
NiPSysModifierBoolCtlr A particle system modifier controller that animates a boolean value for particles.
NiPSysModifierCtlr A particle system modifier controller.
NiInterpController::GetCtlrID() string format:
'%s'
Where %s = Value of "Modifier Name"
NiPSysModifierFloatCtlr A particle system modifier controller that animates a floating point value for particles.
NiPSysPlanarCollider Particle Collider object which particles will interact with.
NiPSysPositionModifier Particle modifier that updates the particle positions based on velocity and last update time.
NiPSysRadialFieldModifier Particle system modifier, updates the particle velocity to simulate the effects of point gravity.
NiPSysResetOnLoopCtlr Particle modifier that calls reset on a target upon looping.
NiPSysRotationModifier Particle modifier that adds rotations to particles.
NiPSysSpawnModifier Particle modifier that spawns additional copies of a particle.
NiPSysSphereEmitter Particle emitter that uses points within a sphere shape to emit from.
NiPSysSphericalCollider Particle Collider object which particles will interact with.
NiPSysTrailEmitter Guild 2-Specific node
NiPSysTurbulenceFieldModifier Particle system modifier, implements a turbulence field force for particles.
NiPSysUpdateCtlr Particle system controller, tells the system to update its simulation.
NiPSysVolumeEmitter Abstract base class for particle emitters that emit particles from a volume.
NiPSysVortexFieldModifier Particle system modifier, implements a vortex field force for particles.
NiPalette NiPalette objects represent mappings from 8-bit indices to 24-bit RGB or 32-bit RGBA colors.
NiParticleBomb LEGACY (pre-10.1) particle modifier.
NiParticleColorModifier LEGACY (pre-10.1) particle modifier.
NiParticleGrowFade LEGACY (pre-10.1) particle modifier.
NiParticleMeshModifier LEGACY (pre-10.1) particle modifier.
NiParticleMeshes LEGACY (pre-10.1). Particle meshes.
NiParticleMeshesData LEGACY (pre-10.1). Particle meshes data.
NiParticleModifier LEGACY (pre-10.1). Abstract base class for particle system modifiers.
NiParticleRotation LEGACY (pre-10.1) particle modifier.
NiParticleSystem A particle system.
NiParticleSystemController A generic particle system time controller object.
NiParticles Generic particle system node.
NiParticlesData Generic rotating particles data object.
NiPathController DEPRECATED (10.2), REMOVED (20.5). Replaced by NiTransformController and NiPathInterpolator.
Time controller for a path.
NiPathEvaluator
NiPathInterpolator Used to make an object follow a predefined spline path.
NiPersistentSrcTextureRendererData
NiPhysXActorDesc For serializing NxActor objects.
NiPhysXBodyDesc For serializing NxBodyDesc objects.
NiPhysXD6JointDesc A 6DOF (6 degrees of freedom) joint.
NiPhysXDest A destination is a link between a PhysX actor and a Gamebryo object being driven by the physics.
NiPhysXDynamicSrc Sends Gamebryo scene state to a PhysX dynamic actor.
NiPhysXJointDesc A PhysX Joint abstract base class.
NiPhysXKinematicSrc Sets state of kinematic PhysX actor.
NiPhysXMaterialDesc For serializing NxMaterialDesc objects.
NiPhysXMeshDesc Holds mesh data for streaming.
NiPhysXProp A PhysX prop which holds information about PhysX actors in a Gamebryo scene
NiPhysXPropDesc For serialization of PhysX objects and to attach them to the scene.
NiPhysXRigidBodyDest Base for destinations that set a rigid body state.
NiPhysXRigidBodySrc Sets state of a rigid body PhysX actor.
NiPhysXShapeDesc For serializing NxShapeDesc objects
NiPhysXSrc A source is a link between a Gamebryo object and a PhysX actor.
NiPhysXTransformDest Connects PhysX rigid body actors to a scene node.
NiPixelData A texture.
NiPixelFormat
NiPlanarCollider LEGACY (pre-10.1) particle modifier.
NiPoint3Evaluator
NiPoint3InterpController Abstract base class for all NiInterpControllers that use an NiInterpolator to animate their target NiPoint3 value.
NiPoint3Interpolator Uses NiPosKeys to animate an NiPoint3 value over time.
NiPointLight A point light.
NiPortal NiPortal objects are grouping nodes that support aggressive visibility culling.
They represent flat polygonal regions through which a part of a scene graph can be viewed.
NiPosData Wrapper for position animation keys.
NiProperty Abstract base class representing all rendering properties. Subclasses are attached to NiAVObjects to control their rendering.
NiQuaternionEvaluator
NiRangeLODData NiRangeLODData controls switching LOD levels based on Z depth from the camera to the NiLODNode.
NiRawImageData LEGACY (pre-10.1)
Raw image data.
NiRenderObject An object that can be rendered.
NiRollController DEPRECATED (10.2), REMOVED (20.5). Replaced by NiTransformController and NiLookAtInterpolator.
NiRoom NiRoom objects represent cells in a cell-portal culling system.
NiRoomGroup NiRoomGroup represents a set of connected rooms i.e. a game level.
NiRotData Wrapper for rotation animation keys.
NiRotatingParticles Unknown.
NiRotatingParticlesData Rotating particles data object.
NiScreenElements DEPRECATED (20.5), replaced by NiMeshScreenElements.
Two dimensional screen elements.
NiScreenElementsData DEPRECATED (20.5), functionality included in NiMeshScreenElements.
Two dimensional screen elements.
NiScreenLODData NiScreenLODData controls switching LOD levels based on proportion of the screen that a bound would include.
NiSequence Root node in NetImmerse .kf files (until version 10.0).
NiSequenceData Root node in Gamebryo .kf files (20.5.0.1 and up).
For 20.5.0.0, "NiSequenceData" is an alias for "NiControllerSequence" and this is not handled in nifxml.
This was not found in any 20.5.0.0 KFs available and they instead use NiControllerSequence directly.
NiSequenceStreamHelper DEPRECATED (pre-10.1), REMOVED (20.3).
Keyframe animation root node, in .kf files.
NiShadeProperty Determines whether flat shading or smooth shading is used on a shape.
NiShadowGenerator An NiShadowGenerator object is attached to an NiDynamicEffect object to inform the shadowing system that the effect produces shadows.
NiSingleInterpController Uses a single NiInterpolator to animate its target value.
NiSkinData Skinning data.
NiSkinInstance Skinning instance.
NiSkinPartition Skinning data, optimized for hardware skinning. The mesh is partitioned in submeshes such that each vertex of a submesh is influenced only by a limited and fixed number of bones.
NiSkinningLODController Defines the levels of detail for a given character and dictates the character's current LOD.
NiSkinningMeshModifier
NiSortAdjustNode Used to turn sorting off for individual subtrees in a scene. Useful if objects must be drawn in a fixed order.
NiSourceCubeMap Represents cube maps that are created from either a set of six image files, six blocks of pixel data, or a single pixel data with six faces.
NiSourceTexture Describes texture source and properties.
NiSpecularProperty Gives specularity to a shape. Flags 0x0001.
NiSphericalCollider LEGACY (pre-10.1) particle modifier.
NiSpotLight A spot.
NiStencilProperty Allows control of stencil testing.
NiStringExtraData Apparently commands for an optimizer instructing it to keep things it would normally discard.
Also refers to NiNode objects (through their name) in animation .kf files.
NiStringPalette List of 0x00-seperated strings, which are names of controlled objects and controller types. Used in .kf files in conjunction with NiControllerSequence.
NiStringsExtraData List of strings; for example, a list of all bone names.
NiSwitchNode Represents groups of multiple scenegraph subtrees, only one of which (the "active child") is drawn at any given time.
NiTextKeyExtraData Extra data, used to name different animation sequences.
NiTexture A texture.
NiTextureEffect Represents an effect that uses projected textures such as projected lights (gobos), environment maps, and fog maps.
NiTextureModeProperty LEGACY (pre-10.1)
NiTextureProperty LEGACY (pre-10.1)
NiTextureTransformController Used to animate a single member of an NiTextureTransform.
NiInterpController::GetCtlrID() string formats:
['%1-%2-TT_TRANSLATE_U', '%1-%2-TT_TRANSLATE_V', '%1-%2-TT_ROTATE', '%1-%2-TT_SCALE_U', '%1-%2-TT_SCALE_V']
(Depending on "Operation" enumeration, %1 = Value of "Shader Map", %2 = Value of "Texture Slot")
NiTexturingProperty Describes how a fragment shader should be configured for a given piece of geometry.
NiTimeController Abstract base class that provides the base timing and update functionality for all the Gamebryo animation controllers.
NiTransformController NiTransformController replaces NiKeyframeController.
NiTransformData Wrapper for transformation animation keys.
NiTransformEvaluator
NiTransformInterpolator An interpolator for transform keyframes.
NiTransparentProperty Unknown
NiTriBasedGeom Describes a mesh, built from triangles.
NiTriBasedGeomData Describes a mesh, built from triangles.
NiTriShape A shape node that refers to singular triangle data.
NiTriShapeData Holds mesh data using a list of singular triangles.
NiTriShapeSkinController Old version of skinning instance.
NiTriStrips A shape node that refers to data organized into strips of triangles
NiTriStripsData Holds mesh data using strips of triangles.
NiUVController DEPRECATED (pre-10.1), REMOVED (20.3).
Time controller for texture coordinates.
NiUVData DEPRECATED (pre-10.1), REMOVED (20.3)
Texture coordinate data.
NiVectorExtraData DEPRECATED (20.5).
Extra data in the form of a vector (as x, y, z, w components).
NiVertWeightsExtraData DEPRECATED (10.x), REMOVED (?)
Not used in skinning.
Unsure of use - perhaps for morphing animation or gravity.
NiVertexColorProperty Property of vertex colors. This object is referred to by the root object of the NIF file whenever some NiTriShapeData object has vertex colors with non-default settings; if not present, vertex colors have vertex_mode=2 and lighting_mode=1.
NiVisController Animates the visibility of an NiAVObject.
NiVisData DEPRECATED (10.2), REMOVED (?), Replaced by NiBoolData.
Visibility data for a controller.
NiWireframeProperty Allows applications to switch between drawing solid geometry or wireframe outlines.
NiZBufferProperty Allows applications to set the test and write modes of the renderer's Z-buffer and to set the comparison function used for the Z-buffer test.
RootCollisionNode Morrowind-specific node for collision mesh.
SkyShaderProperty Bethesda-specific property. Found in Fallout3
TallGrassShaderProperty Bethesda-specific property.
TileShaderProperty Bethesda-specific property.
VolumetricFogShaderProperty Bethesda-specific property.
WaterShaderProperty Bethesda-specific property. Found in Fallout3
bhkAabbPhantom Bethesda-specific Havok serializable.
bhkBallAndSocketConstraint A Ball and Socket Constraint.
bhkBallSocketConstraintChain A Ball and Socket Constraint chain.
bhkBlendCollisionObject Unknown.
bhkBlendController Unknown. Is apparently only used in skeleton.nif files.
bhkBoxShape A box.
bhkBreakableConstraint A breakable constraint.
bhkBvTreeShape A tree-like Havok data structure stored in an assembly-like binary code?
bhkCapsuleShape A capsule.
bhkCollisionObject Havok related collision object?
bhkCompressedMeshShape Compressed collision mesh.
bhkCompressedMeshShapeData A compressed mesh shape for collision in Skyrim.
bhkConstraint Describes a physical constraint.
bhkConvexListShape A havok shape.
A list of convex shapes.

Do not put a bhkPackedNiTriStripsShape in the Sub Shapes. Use a
separate collision nodes without a list shape for those.

Also, shapes collected in a bhkListShape may not have the correct
walking noise, so only use it for non-walkable objects.
bhkConvexShape A havok shape.
bhkConvexTransformShape A convex transformed shape?
bhkConvexVerticesShape A convex shape built from vertices. Note that if the shape is used in
a non-static object (such as clutter), then they will simply fall
through ground when they are under a bhkListShape.
bhkEntity A havok node, describes physical properties.
bhkHingeConstraint A hinge constraint.
bhkLimitedHingeConstraint Hinge constraint.
bhkLiquidAction Bethesda-specific Havok serializable.
bhkListShape A list of shapes.

Do not put a bhkPackedNiTriStripsShape in the Sub Shapes. Use a
separate collision nodes without a list shape for those.

Also, shapes collected in a bhkListShape may not have the correct
walking noise, so only use it for non-walkable objects.
bhkMalleableConstraint A malleable constraint.
bhkMeshShape
bhkMoppBvTreeShape Memory optimized partial polytope bounding volume tree shape (not an entity).
bhkMultiSphereShape Unknown.
bhkNPCollisionObject Fallout 4 Collision Object
bhkNiCollisionObject Havok related collision object?
bhkNiTriStripsShape A shape constructed from a bunch of strips.
bhkOrientHingedBodyAction Bethesda-Specific Havok serializable.
bhkPCollisionObject Unknown.
bhkPackedNiTriStripsShape A shape constructed from strips data.
bhkPhantom Havok object that do not react with other objects when they collide (causing deflection, etc.) but still trigger collision notifications to the game. Possible uses are traps, portals, AI fields, etc.
bhkPhysicsSystem Fallout 4 Collision System
bhkPoseArray Found in Fallout 3 .psa files, extra ragdoll info for NPCs/creatures. (usually idleanims\deathposes.psa)
Defines different kill poses. The game selects the pose randomly and applies it to a skeleton immediately upon ragdolling.
Poses can be previewed in GECK Object Window-Actor Data-Ragdoll and selecting Pose Matching tab.
bhkPrismaticConstraint A prismatic constraint.
bhkRagdollConstraint Ragdoll constraint.
bhkRagdollSystem Fallout 4 Ragdoll System
bhkRagdollTemplate Found in Fallout 3, more ragdoll info? (meshes\ragdollconstraint\*.rdt)
bhkRagdollTemplateData Data for bhkRagdollTemplate
bhkRefObject The base type of most Bethesda-specific Havok-related NIF objects.
bhkRigidBody This is the default body type for all "normal" usable and static world objects. The "T" suffix
marks this body as active for translation and rotation, a normal bhkRigidBody ignores those
properties. Because the properties are equal, a bhkRigidBody may be renamed into a bhkRigidBodyT and vice-versa.
bhkRigidBodyT The "T" suffix marks this body as active for translation and rotation.
bhkSPCollisionObject Unknown.
bhkSerializable Havok objects that can be saved and loaded from disk?
bhkShape A Havok Shape?
bhkShapeCollection Havok collision object that uses multiple shapes?
bhkShapePhantom A Havok phantom that uses a Havok shape object for its collision volume instead of just a bounding box.
bhkSimpleShapePhantom Unknown shape.
bhkSphereRepShape A havok shape, perhaps with a bounding sphere for quick rejection in addition to more detailed shape data?
bhkSphereShape A sphere.
bhkStiffSpringConstraint A spring constraint.
bhkSystem Fallout 4 Physics System
bhkTransformShape Transforms a shape.
bhkWorldObject Havok objects that have a position in the world?
hkPackedNiTriStripsData NiTriStripsData for havok data?