From 4140f9da3ce31fc17b2893fa7e37303d22fa5896 Mon Sep 17 00:00:00 2001 From: Alexei Kotov Date: Wed, 30 Aug 2023 18:58:20 +0300 Subject: [PATCH 1/2] Reorganize the list of recognized NIF records --- components/nif/niffile.cpp | 389 ++++++++++++++++++++++--------------- 1 file changed, 237 insertions(+), 152 deletions(-) diff --git a/components/nif/niffile.cpp b/components/nif/niffile.cpp index 0edabdd7a7..f806c61bc1 100644 --- a/components/nif/niffile.cpp +++ b/components/nif/niffile.cpp @@ -49,180 +49,265 @@ namespace Nif static std::map makeFactory() { return { + // 4.0.0.2 refers to Bethesda variant of NetImmerse 4.0.0.2 file format + // Gamebryo refers to files newer than 4.0.0.2 + // Bethesda refers to custom records Bethesda introduced post-4.0.0.2 + + // NODES + + // NiNode-like nodes, 4.0.0.2 { "NiNode", &construct }, - { "NiSwitchNode", &construct }, - { "NiLODNode", &construct }, - { "NiFltAnimationNode", &construct }, { "AvoidNode", &construct }, - { "NiCollisionSwitch", &construct }, - { "NiBSParticleNode", &construct }, - { "NiBSAnimationNode", &construct }, { "NiBillboardNode", &construct }, - { "NiTriShape", &construct }, - { "NiTriStrips", &construct }, - { "NiLines", &construct }, - { "NiParticles", &construct }, - { "NiRotatingParticles", &construct }, - { "NiAutoNormalParticles", &construct }, - { "NiCamera", &construct }, + { "NiBSAnimationNode", &construct }, + { "NiBSParticleNode", &construct }, + { "NiCollisionSwitch", &construct }, + { "NiSortAdjustNode", &construct }, { "RootCollisionNode", &construct }, - { "NiTexturingProperty", &construct }, - { "NiFogProperty", &construct }, - { "NiMaterialProperty", &construct }, - { "NiZBufferProperty", &construct }, - { "NiAlphaProperty", &construct }, - { "NiVertexColorProperty", &construct }, - { "NiShadeProperty", &construct }, - { "NiDitherProperty", &construct }, - { "NiWireframeProperty", &construct }, - { "NiSpecularProperty", &construct }, - { "NiStencilProperty", &construct }, - { "NiVisController", &construct }, - { "NiGeomMorpherController", &construct }, - { "NiKeyframeController", &construct }, - { "NiAlphaController", &construct }, - { "NiRollController", &construct }, - { "NiUVController", &construct }, - { "NiPathController", &construct }, - { "NiMaterialColorController", &construct }, - { "NiBSPArrayController", &construct }, - { "NiParticleSystemController", &construct }, - { "NiFlipController", &construct }, - { "NiTextureTransformController", - &construct }, - { "NiAmbientLight", &construct }, - { "NiDirectionalLight", &construct }, - { "NiPointLight", &construct }, - { "NiSpotLight", &construct }, - { "NiTextureEffect", &construct }, - { "NiExtraData", &construct }, - { "NiVertWeightsExtraData", &construct }, - { "NiTextKeyExtraData", &construct }, - { "NiStringExtraData", &construct }, - { "NiGravity", &construct }, - { "NiPlanarCollider", &construct }, - { "NiSphericalCollider", &construct }, - { "NiParticleGrowFade", &construct }, - { "NiParticleColorModifier", &construct }, - { "NiParticleRotation", &construct }, - { "NiFloatData", &construct }, - { "NiTriShapeData", &construct }, - { "NiTriStripsData", &construct }, - { "NiLinesData", &construct }, - { "NiVisData", &construct }, - { "NiColorData", &construct }, - { "NiPixelData", &construct }, - { "NiMorphData", &construct }, - { "NiKeyframeData", &construct }, - { "NiSkinData", &construct }, - { "NiUVData", &construct }, - { "NiPosData", &construct }, - { "NiParticlesData", &construct }, - { "NiRotatingParticlesData", &construct }, - { "NiAutoNormalParticlesData", &construct }, - { "NiSequenceStreamHelper", &construct }, - { "NiSourceTexture", &construct }, - { "NiSkinInstance", &construct }, - { "NiLookAtController", &construct }, - { "NiPalette", &construct }, - { "NiIntegerExtraData", &construct }, - { "NiIntegersExtraData", &construct }, - { "NiBinaryExtraData", &construct }, - { "NiBooleanExtraData", &construct }, - { "NiVectorExtraData", &construct }, - { "NiColorExtraData", &construct }, - { "NiFloatExtraData", &construct }, - { "NiFloatsExtraData", &construct }, - { "NiStringPalette", &construct }, - { "NiBoolData", &construct }, - { "NiSkinPartition", &construct }, - { "BSXFlags", &construct }, - { "BSBound", &construct }, - { "NiTransformData", &construct }, - { "BSFadeNode", &construct }, - { "BSLeafAnimNode", &construct }, - { "BSTreeNode", &construct }, - { "BSValueNode", &construct }, - { "BSOrderedNode", &construct }, - { "BSMultiBoundNode", &construct }, - { "BSRangeNode", &construct }, + + // NiNode-like nodes, Bethesda { "BSBlastNode", &construct }, { "BSDamageStage", &construct }, - { "bhkBlendController", &construct }, + { "BSFadeNode", &construct }, + { "BSLeafAnimNode", &construct }, + { "BSMultiBoundNode", &construct }, + { "BSOrderedNode", &construct }, + { "BSRangeNode", &construct }, + { "BSTreeNode", &construct }, + { "BSValueNode", &construct }, + + // Switch nodes, 4.0.0.2 + { "NiSwitchNode", &construct }, + { "NiFltAnimationNode", &construct }, + { "NiLODNode", &construct }, + + // NiSequence nodes, 4.0.0.2 + { "NiSequenceStreamHelper", &construct }, + + // NiSequence nodes, Gamebryo + { "NiSequence", &construct }, + { "NiControllerSequence", &construct }, + + // Other nodes, 4.0.0.2 + { "NiCamera", &construct }, + + // ACCUMULATORS + + // 4.0.0.2 + { "NiAlphaAccumulator", &construct }, + { "NiClusterAccumulator", &construct }, + + // CONTROLLERS + + // 4.0.0.2 + { "NiAlphaController", &construct }, + { "NiBSPArrayController", &construct }, + { "NiFlipController", &construct }, + { "NiGeomMorpherController", &construct }, + { "NiKeyframeController", &construct }, + { "NiLookAtController", &construct }, + { "NiMaterialColorController", &construct }, + { "NiParticleSystemController", &construct }, + { "NiPathController", &construct }, + { "NiRollController", &construct }, + { "NiUVController", &construct }, + { "NiVisController", &construct }, + + // Gamebryo + { "NiControllerManager", &construct }, + { "NiTransformController", &construct }, + { "NiTextureTransformController", + &construct }, + { "NiMultiTargetTransformController", + &construct }, + + // Bethesda { "BSMaterialEmittanceMultController", &construct }, { "BSRefractionFirePeriodController", &construct }, { "BSRefractionStrengthController", &construct }, - { "NiFloatInterpolator", &construct }, - { "NiBoolInterpolator", &construct }, - { "NiBoolTimelineInterpolator", &construct }, - { "NiPoint3Interpolator", &construct }, - { "NiTransformController", &construct }, - { "NiMultiTargetTransformController", - &construct }, - { "NiTransformInterpolator", &construct }, - { "NiColorInterpolator", &construct }, - { "BSShaderTextureSet", &construct }, - { "BSLODTriShape", &construct }, - { "BSShaderProperty", &construct }, - { "BSShaderPPLightingProperty", &construct }, - { "BSShaderNoLightingProperty", &construct }, - { "BSFurnitureMarker", &construct }, - { "BSFurnitureMarkerNode", &construct }, - { "NiCollisionObject", &construct }, - { "bhkCollisionObject", &construct }, - { "bhkSPCollisionObject", &construct }, - { "bhkPCollisionObject", &construct }, - { "BSDismemberSkinInstance", &construct }, - { "NiControllerManager", &construct }, - { "bhkMoppBvTreeShape", &construct }, - { "bhkNiTriStripsShape", &construct }, - { "bhkPackedNiTriStripsShape", &construct }, - { "hkPackedNiTriStripsData", &construct }, - { "bhkConvexVerticesShape", &construct }, - { "bhkConvexTransformShape", &construct }, - { "bhkTransformShape", &construct }, - { "bhkSimpleShapePhantom", &construct }, - { "bhkBoxShape", &construct }, - { "bhkCapsuleShape", &construct }, - { "bhkSphereShape", &construct }, - { "bhkListShape", &construct }, - { "bhkRigidBody", &construct }, - { "bhkRigidBodyT", &construct }, - { "bhkRagdollConstraint", &construct }, - { "bhkHingeConstraint", &construct }, - { "bhkLimitedHingeConstraint", &construct }, - { "BSLightingShaderProperty", &construct }, - { "BSEffectShaderProperty", &construct }, - { "NiSortAdjustNode", &construct }, - { "NiClusterAccumulator", &construct }, - { "NiAlphaAccumulator", &construct }, - { "NiSequence", &construct }, - { "NiControllerSequence", &construct }, - { "NiDefaultAVObjectPalette", &construct }, + { "BSEffectShaderPropertyColorController", + &construct }, + { "BSEffectShaderPropertyFloatController", + &construct }, + { "BSLightingShaderPropertyColorController", + &construct }, + { "BSLightingShaderPropertyFloatController", + &construct }, + { "bhkBlendController", &construct }, + + // Interpolators, Gamebryo { "NiBlendBoolInterpolator", &construct }, { "NiBlendFloatInterpolator", &construct }, { "NiBlendPoint3Interpolator", &construct }, { "NiBlendTransformInterpolator", &construct }, - { "bhkCompressedMeshShape", &construct }, - { "bhkCompressedMeshShapeData", &construct }, + { "NiBoolInterpolator", &construct }, + { "NiBoolTimelineInterpolator", &construct }, + { "NiColorInterpolator", &construct }, + { "NiFloatInterpolator", &construct }, + { "NiPoint3Interpolator", &construct }, + { "NiTransformInterpolator", &construct }, + + // DATA + + // 4.0.0.2 + { "NiColorData", &construct }, + { "NiFloatData", &construct }, + { "NiKeyframeData", &construct }, + { "NiMorphData", &construct }, + { "NiPalette", &construct }, + { "NiPixelData", &construct }, + { "NiPosData", &construct }, + { "NiSourceTexture", &construct }, + { "NiUVData", &construct }, + { "NiVisData", &construct }, + + // Gamebryo + { "NiBoolData", &construct }, + { "NiDefaultAVObjectPalette", &construct }, + { "NiTransformData", &construct }, + + // Bethesda + { "BSShaderTextureSet", &construct }, + + // DYNAMIC EFFECTS + + // 4.0.0.2 + { "NiAmbientLight", &construct }, + { "NiDirectionalLight", &construct }, + { "NiPointLight", &construct }, + { "NiSpotLight", &construct }, + { "NiTextureEffect", &construct }, + + // EXTRA DATA + + // 4.0.0.2 + { "NiExtraData", &construct }, + { "NiStringExtraData", &construct }, + { "NiTextKeyExtraData", &construct }, + { "NiVertWeightsExtraData", &construct }, + + // Gamebryo + { "NiBinaryExtraData", &construct }, + { "NiBooleanExtraData", &construct }, + { "NiColorExtraData", &construct }, + { "NiFloatExtraData", &construct }, + { "NiFloatsExtraData", &construct }, + { "NiIntegerExtraData", &construct }, + { "NiIntegersExtraData", &construct }, + { "NiVectorExtraData", &construct }, + { "NiStringPalette", &construct }, + + // Bethesda bounds + { "BSBound", &construct }, { "BSMultiBound", &construct }, { "BSMultiBoundOBB", &construct }, { "BSMultiBoundSphere", &construct }, + + // Bethesda markers + { "BSFurnitureMarker", &construct }, + { "BSFurnitureMarkerNode", &construct }, { "BSInvMarker", &construct }, - { "BSTriShape", &construct }, - { "BSEffectShaderPropertyFloatController", - &construct }, - { "BSLightingShaderPropertyFloatController", - &construct }, - { "BSEffectShaderPropertyColorController", - &construct }, - { "BSLightingShaderPropertyColorController", - &construct }, + + // Other Bethesda records { "BSBehaviorGraphExtraData", &construct }, + { "BSXFlags", &construct }, + + // GEOMETRY + + // 4.0.0.2 + { "NiAutoNormalParticles", &construct }, + { "NiAutoNormalParticlesData", &construct }, + { "NiLines", &construct }, + { "NiLinesData", &construct }, + { "NiParticles", &construct }, + { "NiParticlesData", &construct }, + { "NiRotatingParticles", &construct }, + { "NiRotatingParticlesData", &construct }, + { "NiSkinData", &construct }, + { "NiSkinInstance", &construct }, + { "NiSkinPartition", &construct }, + { "NiTriShape", &construct }, + { "NiTriShapeData", &construct }, + { "NiTriStrips", &construct }, + { "NiTriStripsData", &construct }, + + // Bethesda + { "BSDismemberSkinInstance", &construct }, + { "BSTriShape", &construct }, + { "BSLODTriShape", &construct }, + + // PARTICLES + + // Modifiers, 4.0.0.2 + { "NiGravity", &construct }, + { "NiParticleColorModifier", &construct }, + { "NiParticleGrowFade", &construct }, + { "NiParticleRotation", &construct }, + + // Colliders, 4.0.0.2 + { "NiPlanarCollider", &construct }, + { "NiSphericalCollider", &construct }, + + // PHYSICS + + // Collision objects, Gamebryo + { "NiCollisionObject", &construct }, + + // Collision objects, Bethesda + { "bhkCollisionObject", &construct }, + { "bhkPCollisionObject", &construct }, + { "bhkSPCollisionObject", &construct }, + + // Constraint records, Bethesda + { "bhkHingeConstraint", &construct }, + { "bhkLimitedHingeConstraint", &construct }, + { "bhkRagdollConstraint", &construct }, + + // Physics body records, Bethesda + { "bhkRigidBody", &construct }, + { "bhkRigidBodyT", &construct }, + + // Physics geometry records, Bethesda + { "bhkBoxShape", &construct }, + { "bhkCapsuleShape", &construct }, + { "bhkCompressedMeshShape", &construct }, + { "bhkCompressedMeshShapeData", &construct }, + { "bhkConvexTransformShape", &construct }, + { "bhkConvexVerticesShape", &construct }, + { "bhkListShape", &construct }, + { "bhkMoppBvTreeShape", &construct }, + { "bhkNiTriStripsShape", &construct }, + { "bhkPackedNiTriStripsShape", &construct }, + { "hkPackedNiTriStripsData", &construct }, + { "bhkSimpleShapePhantom", &construct }, + { "bhkSphereShape", &construct }, + { "bhkTransformShape", &construct }, + + // PROPERTIES + + // 4.0.0.2 + { "NiAlphaProperty", &construct }, + { "NiDitherProperty", &construct }, + { "NiFogProperty", &construct }, + { "NiMaterialProperty", &construct }, + { "NiShadeProperty", &construct }, + { "NiSpecularProperty", &construct }, + { "NiStencilProperty", &construct }, + { "NiTexturingProperty", &construct }, + { "NiVertexColorProperty", &construct }, + { "NiWireframeProperty", &construct }, + { "NiZBufferProperty", &construct }, + + // Shader properties, Bethesda + { "BSShaderProperty", &construct }, + { "BSShaderPPLightingProperty", &construct }, + { "BSShaderNoLightingProperty", &construct }, + { "BSLightingShaderProperty", &construct }, + { "BSEffectShaderProperty", &construct }, }; } From f8b2967dab08598b04ff188098ae68dc3c4770f3 Mon Sep 17 00:00:00 2001 From: Alexei Kotov Date: Wed, 30 Aug 2023 19:11:00 +0300 Subject: [PATCH 2/2] Alphabetize NIF record type list --- components/nif/record.hpp | 257 +++++++++++++++++++------------------- 1 file changed, 128 insertions(+), 129 deletions(-) diff --git a/components/nif/record.hpp b/components/nif/record.hpp index dc4fab8e2e..3cb000e90e 100644 --- a/components/nif/record.hpp +++ b/components/nif/record.hpp @@ -35,149 +35,148 @@ namespace Nif enum RecordType { RC_MISSING = 0, - RC_NiNode, - RC_NiSwitchNode, - RC_NiLODNode, - RC_NiFltAnimationNode, - RC_NiBillboardNode, RC_AvoidNode, - RC_NiCollisionSwitch, - RC_NiTriShape, - RC_NiTriStrips, - RC_NiLines, - RC_NiParticles, - RC_NiBSParticleNode, - RC_NiCamera, - RC_NiTexturingProperty, - RC_NiFogProperty, - RC_NiMaterialProperty, - RC_NiZBufferProperty, - RC_NiAlphaProperty, - RC_NiVertexColorProperty, - RC_NiShadeProperty, - RC_NiDitherProperty, - RC_NiWireframeProperty, - RC_NiSpecularProperty, - RC_NiStencilProperty, - RC_NiVisController, - RC_NiGeomMorpherController, - RC_NiKeyframeController, - RC_NiAlphaController, - RC_NiRollController, - RC_NiUVController, - RC_NiPathController, - RC_NiMaterialColorController, - RC_NiBSPArrayController, - RC_NiParticleSystemController, - RC_NiFlipController, - RC_NiTextureTransformController, - RC_NiBSAnimationNode, - RC_NiLight, - RC_NiTextureEffect, - RC_NiExtraData, - RC_NiVertWeightsExtraData, - RC_NiTextKeyExtraData, - RC_NiStringExtraData, - RC_NiGravity, - RC_NiPlanarCollider, - RC_NiParticleGrowFade, - RC_NiParticleColorModifier, - RC_NiParticleRotation, - RC_NiFloatData, - RC_NiTriShapeData, - RC_NiTriStripsData, - RC_NiLinesData, - RC_NiVisData, - RC_NiColorData, - RC_NiPixelData, - RC_NiMorphData, - RC_NiKeyframeData, - RC_NiSkinData, - RC_NiUVData, - RC_NiPosData, - RC_NiRotatingParticlesData, - RC_NiParticlesData, - RC_NiSequenceStreamHelper, - RC_NiSourceTexture, - RC_NiSkinInstance, - RC_RootCollisionNode, - RC_NiSphericalCollider, - RC_NiLookAtController, - RC_NiPalette, - RC_NiIntegerExtraData, - RC_NiIntegersExtraData, - RC_NiBinaryExtraData, - RC_NiBooleanExtraData, - RC_NiVectorExtraData, - RC_NiColorExtraData, - RC_NiFloatExtraData, - RC_NiFloatsExtraData, - RC_NiStringPalette, - RC_NiBoolData, - RC_NiSkinPartition, - RC_BSXFlags, - RC_BSBound, RC_bhkBlendController, - RC_BSMaterialEmittanceMultController, - RC_BSRefractionFirePeriodController, - RC_BSRefractionStrengthController, - RC_NiFloatInterpolator, - RC_NiPoint3Interpolator, - RC_NiBoolInterpolator, - RC_NiBoolTimelineInterpolator, - RC_NiTransformInterpolator, - RC_NiColorInterpolator, - RC_BSShaderTextureSet, - RC_BSLODTriShape, - RC_BSShaderProperty, - RC_BSShaderPPLightingProperty, - RC_BSShaderNoLightingProperty, - RC_BSFurnitureMarker, - RC_NiCollisionObject, + RC_bhkBoxShape, + RC_bhkCapsuleShape, RC_bhkCollisionObject, - RC_BSDismemberSkinInstance, - RC_NiControllerManager, + RC_bhkCompressedMeshShape, + RC_bhkCompressedMeshShapeData, + RC_bhkConvexTransformShape, + RC_bhkConvexVerticesShape, + RC_bhkHingeConstraint, + RC_bhkLimitedHingeConstraint, + RC_bhkListShape, RC_bhkMoppBvTreeShape, RC_bhkNiTriStripsShape, RC_bhkPackedNiTriStripsShape, - RC_hkPackedNiTriStripsData, - RC_bhkConvexVerticesShape, - RC_bhkConvexTransformShape, - RC_bhkSimpleShapePhantom, - RC_bhkBoxShape, - RC_bhkCapsuleShape, - RC_bhkSphereShape, - RC_bhkListShape, + RC_bhkRagdollConstraint, RC_bhkRigidBody, RC_bhkRigidBodyT, - RC_bhkRagdollConstraint, - RC_bhkHingeConstraint, - RC_bhkLimitedHingeConstraint, - RC_BSLightingShaderProperty, + RC_bhkSimpleShapePhantom, + RC_bhkSphereShape, + RC_BSBehaviorGraphExtraData, + RC_BSBound, + RC_BSDismemberSkinInstance, RC_BSEffectShaderProperty, - RC_NiClusterAccumulator, + RC_BSEffectShaderPropertyColorController, + RC_BSEffectShaderPropertyFloatController, + RC_BSFurnitureMarker, + RC_BSInvMarker, + RC_BSLightingShaderProperty, + RC_BSLightingShaderPropertyColorController, + RC_BSLightingShaderPropertyFloatController, + RC_BSLODTriShape, + RC_BSMaterialEmittanceMultController, + RC_BSMultiBound, + RC_BSMultiBoundOBB, + RC_BSMultiBoundSphere, + RC_BSRefractionFirePeriodController, + RC_BSRefractionStrengthController, + RC_BSShaderNoLightingProperty, + RC_BSShaderPPLightingProperty, + RC_BSShaderProperty, + RC_BSShaderTextureSet, + RC_BSTriShape, + RC_BSXFlags, + RC_hkPackedNiTriStripsData, RC_NiAlphaAccumulator, - RC_NiSortAdjustNode, - RC_NiMultiTargetTransformController, - RC_NiSequence, - RC_NiControllerSequence, - RC_NiDefaultAVObjectPalette, + RC_NiAlphaController, + RC_NiAlphaProperty, + RC_NiBillboardNode, + RC_NiBinaryExtraData, RC_NiBlendBoolInterpolator, RC_NiBlendFloatInterpolator, RC_NiBlendPoint3Interpolator, RC_NiBlendTransformInterpolator, - RC_bhkCompressedMeshShape, - RC_bhkCompressedMeshShapeData, - RC_BSMultiBound, - RC_BSMultiBoundOBB, - RC_BSMultiBoundSphere, - RC_BSInvMarker, - RC_BSTriShape, - RC_BSEffectShaderPropertyFloatController, - RC_BSEffectShaderPropertyColorController, - RC_BSLightingShaderPropertyFloatController, - RC_BSLightingShaderPropertyColorController, - RC_BSBehaviorGraphExtraData, + RC_NiBoolData, + RC_NiBooleanExtraData, + RC_NiBoolInterpolator, + RC_NiBoolTimelineInterpolator, + RC_NiBSAnimationNode, + RC_NiBSPArrayController, + RC_NiBSParticleNode, + RC_NiCamera, + RC_NiClusterAccumulator, + RC_NiCollisionObject, + RC_NiCollisionSwitch, + RC_NiColorData, + RC_NiColorExtraData, + RC_NiColorInterpolator, + RC_NiControllerManager, + RC_NiControllerSequence, + RC_NiDefaultAVObjectPalette, + RC_NiDitherProperty, + RC_NiExtraData, + RC_NiFlipController, + RC_NiFloatData, + RC_NiFloatExtraData, + RC_NiFloatInterpolator, + RC_NiFloatsExtraData, + RC_NiFltAnimationNode, + RC_NiFogProperty, + RC_NiGeomMorpherController, + RC_NiGravity, + RC_NiIntegerExtraData, + RC_NiIntegersExtraData, + RC_NiKeyframeController, + RC_NiKeyframeData, + RC_NiLight, + RC_NiLines, + RC_NiLinesData, + RC_NiLODNode, + RC_NiLookAtController, + RC_NiMaterialColorController, + RC_NiMaterialProperty, + RC_NiMorphData, + RC_NiMultiTargetTransformController, + RC_NiNode, + RC_NiPalette, + RC_NiParticleColorModifier, + RC_NiParticleGrowFade, + RC_NiParticleRotation, + RC_NiParticles, + RC_NiParticlesData, + RC_NiParticleSystemController, + RC_NiPathController, + RC_NiPixelData, + RC_NiPlanarCollider, + RC_NiPoint3Interpolator, + RC_NiPosData, + RC_NiRollController, + RC_NiSequence, + RC_NiSequenceStreamHelper, + RC_NiShadeProperty, + RC_NiSkinData, + RC_NiSkinInstance, + RC_NiSkinPartition, + RC_NiSortAdjustNode, + RC_NiSourceTexture, + RC_NiSpecularProperty, + RC_NiSphericalCollider, + RC_NiStencilProperty, + RC_NiStringExtraData, + RC_NiStringPalette, + RC_NiSwitchNode, + RC_NiTextKeyExtraData, + RC_NiTextureEffect, + RC_NiTextureTransformController, + RC_NiTexturingProperty, + RC_NiTransformInterpolator, + RC_NiTriShape, + RC_NiTriShapeData, + RC_NiTriStrips, + RC_NiTriStripsData, + RC_NiUVController, + RC_NiUVData, + RC_NiVectorExtraData, + RC_NiVertexColorProperty, + RC_NiVertWeightsExtraData, + RC_NiVisController, + RC_NiVisData, + RC_NiWireframeProperty, + RC_NiZBufferProperty, + RC_RootCollisionNode, }; /// Base class for all records