Merge branch 'nifreorg' into 'master'

Reorganize NIF record lists

See merge request OpenMW/openmw!3390
macos_ci_fix
psi29a 1 year ago
commit 2cd17830d3
No known key found for this signature in database

@ -49,180 +49,265 @@ namespace Nif
static std::map<std::string, CreateRecord> makeFactory() static std::map<std::string, CreateRecord> makeFactory()
{ {
return { 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<NiNode, RC_NiNode> }, { "NiNode", &construct<NiNode, RC_NiNode> },
{ "NiSwitchNode", &construct<NiSwitchNode, RC_NiSwitchNode> },
{ "NiLODNode", &construct<NiLODNode, RC_NiLODNode> },
{ "NiFltAnimationNode", &construct<NiFltAnimationNode, RC_NiFltAnimationNode> },
{ "AvoidNode", &construct<NiNode, RC_AvoidNode> }, { "AvoidNode", &construct<NiNode, RC_AvoidNode> },
{ "NiCollisionSwitch", &construct<NiNode, RC_NiCollisionSwitch> },
{ "NiBSParticleNode", &construct<NiNode, RC_NiBSParticleNode> },
{ "NiBSAnimationNode", &construct<NiNode, RC_NiBSAnimationNode> },
{ "NiBillboardNode", &construct<NiBillboardNode, RC_NiBillboardNode> }, { "NiBillboardNode", &construct<NiBillboardNode, RC_NiBillboardNode> },
{ "NiTriShape", &construct<NiTriShape, RC_NiTriShape> }, { "NiBSAnimationNode", &construct<NiNode, RC_NiBSAnimationNode> },
{ "NiTriStrips", &construct<NiTriStrips, RC_NiTriStrips> }, { "NiBSParticleNode", &construct<NiNode, RC_NiBSParticleNode> },
{ "NiLines", &construct<NiLines, RC_NiLines> }, { "NiCollisionSwitch", &construct<NiNode, RC_NiCollisionSwitch> },
{ "NiParticles", &construct<NiParticles, RC_NiParticles> }, { "NiSortAdjustNode", &construct<NiSortAdjustNode, RC_NiSortAdjustNode> },
{ "NiRotatingParticles", &construct<NiParticles, RC_NiParticles> },
{ "NiAutoNormalParticles", &construct<NiParticles, RC_NiParticles> },
{ "NiCamera", &construct<NiCamera, RC_NiCamera> },
{ "RootCollisionNode", &construct<NiNode, RC_RootCollisionNode> }, { "RootCollisionNode", &construct<NiNode, RC_RootCollisionNode> },
{ "NiTexturingProperty", &construct<NiTexturingProperty, RC_NiTexturingProperty> },
{ "NiFogProperty", &construct<NiFogProperty, RC_NiFogProperty> }, // NiNode-like nodes, Bethesda
{ "NiMaterialProperty", &construct<NiMaterialProperty, RC_NiMaterialProperty> }, { "BSBlastNode", &construct<BSRangeNode, RC_NiNode> },
{ "NiZBufferProperty", &construct<NiZBufferProperty, RC_NiZBufferProperty> }, { "BSDamageStage", &construct<BSRangeNode, RC_NiNode> },
{ "NiAlphaProperty", &construct<NiAlphaProperty, RC_NiAlphaProperty> }, { "BSFadeNode", &construct<NiNode, RC_NiNode> },
{ "NiVertexColorProperty", &construct<NiVertexColorProperty, RC_NiVertexColorProperty> }, { "BSLeafAnimNode", &construct<NiNode, RC_NiNode> },
{ "NiShadeProperty", &construct<NiShadeProperty, RC_NiShadeProperty> }, { "BSMultiBoundNode", &construct<BSMultiBoundNode, RC_NiNode> },
{ "NiDitherProperty", &construct<NiDitherProperty, RC_NiDitherProperty> }, { "BSOrderedNode", &construct<BSOrderedNode, RC_NiNode> },
{ "NiWireframeProperty", &construct<NiWireframeProperty, RC_NiWireframeProperty> }, { "BSRangeNode", &construct<BSRangeNode, RC_NiNode> },
{ "NiSpecularProperty", &construct<NiSpecularProperty, RC_NiSpecularProperty> }, { "BSTreeNode", &construct<BSTreeNode, RC_NiNode> },
{ "NiStencilProperty", &construct<NiStencilProperty, RC_NiStencilProperty> }, { "BSValueNode", &construct<BSValueNode, RC_NiNode> },
{ "NiVisController", &construct<NiVisController, RC_NiVisController> },
// Switch nodes, 4.0.0.2
{ "NiSwitchNode", &construct<NiSwitchNode, RC_NiSwitchNode> },
{ "NiFltAnimationNode", &construct<NiFltAnimationNode, RC_NiFltAnimationNode> },
{ "NiLODNode", &construct<NiLODNode, RC_NiLODNode> },
// NiSequence nodes, 4.0.0.2
{ "NiSequenceStreamHelper", &construct<NiSequenceStreamHelper, RC_NiSequenceStreamHelper> },
// NiSequence nodes, Gamebryo
{ "NiSequence", &construct<NiSequence, RC_NiSequence> },
{ "NiControllerSequence", &construct<NiControllerSequence, RC_NiControllerSequence> },
// Other nodes, 4.0.0.2
{ "NiCamera", &construct<NiCamera, RC_NiCamera> },
// ACCUMULATORS
// 4.0.0.2
{ "NiAlphaAccumulator", &construct<NiAlphaAccumulator, RC_NiAlphaAccumulator> },
{ "NiClusterAccumulator", &construct<NiClusterAccumulator, RC_NiClusterAccumulator> },
// CONTROLLERS
// 4.0.0.2
{ "NiAlphaController", &construct<NiAlphaController, RC_NiAlphaController> },
{ "NiBSPArrayController", &construct<NiBSPArrayController, RC_NiBSPArrayController> },
{ "NiFlipController", &construct<NiFlipController, RC_NiFlipController> },
{ "NiGeomMorpherController", &construct<NiGeomMorpherController, RC_NiGeomMorpherController> }, { "NiGeomMorpherController", &construct<NiGeomMorpherController, RC_NiGeomMorpherController> },
{ "NiKeyframeController", &construct<NiKeyframeController, RC_NiKeyframeController> }, { "NiKeyframeController", &construct<NiKeyframeController, RC_NiKeyframeController> },
{ "NiAlphaController", &construct<NiAlphaController, RC_NiAlphaController> }, { "NiLookAtController", &construct<NiLookAtController, RC_NiLookAtController> },
{ "NiRollController", &construct<NiRollController, RC_NiRollController> },
{ "NiUVController", &construct<NiUVController, RC_NiUVController> },
{ "NiPathController", &construct<NiPathController, RC_NiPathController> },
{ "NiMaterialColorController", &construct<NiMaterialColorController, RC_NiMaterialColorController> }, { "NiMaterialColorController", &construct<NiMaterialColorController, RC_NiMaterialColorController> },
{ "NiBSPArrayController", &construct<NiBSPArrayController, RC_NiBSPArrayController> },
{ "NiParticleSystemController", &construct<NiParticleSystemController, RC_NiParticleSystemController> }, { "NiParticleSystemController", &construct<NiParticleSystemController, RC_NiParticleSystemController> },
{ "NiFlipController", &construct<NiFlipController, RC_NiFlipController> }, { "NiPathController", &construct<NiPathController, RC_NiPathController> },
{ "NiRollController", &construct<NiRollController, RC_NiRollController> },
{ "NiUVController", &construct<NiUVController, RC_NiUVController> },
{ "NiVisController", &construct<NiVisController, RC_NiVisController> },
// Gamebryo
{ "NiControllerManager", &construct<NiControllerManager, RC_NiControllerManager> },
{ "NiTransformController", &construct<NiKeyframeController, RC_NiKeyframeController> },
{ "NiTextureTransformController", { "NiTextureTransformController",
&construct<NiTextureTransformController, RC_NiTextureTransformController> }, &construct<NiTextureTransformController, RC_NiTextureTransformController> },
{ "NiMultiTargetTransformController",
&construct<NiMultiTargetTransformController, RC_NiMultiTargetTransformController> },
// Bethesda
{ "BSMaterialEmittanceMultController",
&construct<NiFloatInterpController, RC_BSMaterialEmittanceMultController> },
{ "BSRefractionFirePeriodController",
&construct<NiSingleInterpController, RC_BSRefractionFirePeriodController> },
{ "BSRefractionStrengthController",
&construct<NiFloatInterpController, RC_BSRefractionStrengthController> },
{ "BSEffectShaderPropertyColorController",
&construct<BSEffectShaderPropertyColorController, RC_BSEffectShaderPropertyColorController> },
{ "BSEffectShaderPropertyFloatController",
&construct<BSEffectShaderPropertyFloatController, RC_BSEffectShaderPropertyFloatController> },
{ "BSLightingShaderPropertyColorController",
&construct<BSEffectShaderPropertyColorController, RC_BSLightingShaderPropertyColorController> },
{ "BSLightingShaderPropertyFloatController",
&construct<BSEffectShaderPropertyFloatController, RC_BSLightingShaderPropertyFloatController> },
{ "bhkBlendController", &construct<bhkBlendController, RC_bhkBlendController> },
// Interpolators, Gamebryo
{ "NiBlendBoolInterpolator", &construct<NiBlendBoolInterpolator, RC_NiBlendBoolInterpolator> },
{ "NiBlendFloatInterpolator", &construct<NiBlendFloatInterpolator, RC_NiBlendFloatInterpolator> },
{ "NiBlendPoint3Interpolator", &construct<NiBlendPoint3Interpolator, RC_NiBlendPoint3Interpolator> },
{ "NiBlendTransformInterpolator",
&construct<NiBlendTransformInterpolator, RC_NiBlendTransformInterpolator> },
{ "NiBoolInterpolator", &construct<NiBoolInterpolator, RC_NiBoolInterpolator> },
{ "NiBoolTimelineInterpolator", &construct<NiBoolInterpolator, RC_NiBoolTimelineInterpolator> },
{ "NiColorInterpolator", &construct<NiColorInterpolator, RC_NiColorInterpolator> },
{ "NiFloatInterpolator", &construct<NiFloatInterpolator, RC_NiFloatInterpolator> },
{ "NiPoint3Interpolator", &construct<NiPoint3Interpolator, RC_NiPoint3Interpolator> },
{ "NiTransformInterpolator", &construct<NiTransformInterpolator, RC_NiTransformInterpolator> },
// DATA
// 4.0.0.2
{ "NiColorData", &construct<NiColorData, RC_NiColorData> },
{ "NiFloatData", &construct<NiFloatData, RC_NiFloatData> },
{ "NiKeyframeData", &construct<NiKeyframeData, RC_NiKeyframeData> },
{ "NiMorphData", &construct<NiMorphData, RC_NiMorphData> },
{ "NiPalette", &construct<NiPalette, RC_NiPalette> },
{ "NiPixelData", &construct<NiPixelData, RC_NiPixelData> },
{ "NiPosData", &construct<NiPosData, RC_NiPosData> },
{ "NiSourceTexture", &construct<NiSourceTexture, RC_NiSourceTexture> },
{ "NiUVData", &construct<NiUVData, RC_NiUVData> },
{ "NiVisData", &construct<NiVisData, RC_NiVisData> },
// Gamebryo
{ "NiBoolData", &construct<NiBoolData, RC_NiBoolData> },
{ "NiDefaultAVObjectPalette", &construct<NiDefaultAVObjectPalette, RC_NiDefaultAVObjectPalette> },
{ "NiTransformData", &construct<NiKeyframeData, RC_NiKeyframeData> },
// Bethesda
{ "BSShaderTextureSet", &construct<BSShaderTextureSet, RC_BSShaderTextureSet> },
// DYNAMIC EFFECTS
// 4.0.0.2
{ "NiAmbientLight", &construct<NiLight, RC_NiLight> }, { "NiAmbientLight", &construct<NiLight, RC_NiLight> },
{ "NiDirectionalLight", &construct<NiLight, RC_NiLight> }, { "NiDirectionalLight", &construct<NiLight, RC_NiLight> },
{ "NiPointLight", &construct<NiPointLight, RC_NiLight> }, { "NiPointLight", &construct<NiPointLight, RC_NiLight> },
{ "NiSpotLight", &construct<NiSpotLight, RC_NiLight> }, { "NiSpotLight", &construct<NiSpotLight, RC_NiLight> },
{ "NiTextureEffect", &construct<NiTextureEffect, RC_NiTextureEffect> }, { "NiTextureEffect", &construct<NiTextureEffect, RC_NiTextureEffect> },
// EXTRA DATA
// 4.0.0.2
{ "NiExtraData", &construct<NiExtraData, RC_NiExtraData> }, { "NiExtraData", &construct<NiExtraData, RC_NiExtraData> },
{ "NiVertWeightsExtraData", &construct<NiVertWeightsExtraData, RC_NiVertWeightsExtraData> },
{ "NiTextKeyExtraData", &construct<NiTextKeyExtraData, RC_NiTextKeyExtraData> },
{ "NiStringExtraData", &construct<NiStringExtraData, RC_NiStringExtraData> }, { "NiStringExtraData", &construct<NiStringExtraData, RC_NiStringExtraData> },
{ "NiGravity", &construct<NiGravity, RC_NiGravity> }, { "NiTextKeyExtraData", &construct<NiTextKeyExtraData, RC_NiTextKeyExtraData> },
{ "NiPlanarCollider", &construct<NiPlanarCollider, RC_NiPlanarCollider> }, { "NiVertWeightsExtraData", &construct<NiVertWeightsExtraData, RC_NiVertWeightsExtraData> },
{ "NiSphericalCollider", &construct<NiSphericalCollider, RC_NiSphericalCollider> },
{ "NiParticleGrowFade", &construct<NiParticleGrowFade, RC_NiParticleGrowFade> }, // Gamebryo
{ "NiParticleColorModifier", &construct<NiParticleColorModifier, RC_NiParticleColorModifier> },
{ "NiParticleRotation", &construct<NiParticleRotation, RC_NiParticleRotation> },
{ "NiFloatData", &construct<NiFloatData, RC_NiFloatData> },
{ "NiTriShapeData", &construct<NiTriShapeData, RC_NiTriShapeData> },
{ "NiTriStripsData", &construct<NiTriStripsData, RC_NiTriStripsData> },
{ "NiLinesData", &construct<NiLinesData, RC_NiLinesData> },
{ "NiVisData", &construct<NiVisData, RC_NiVisData> },
{ "NiColorData", &construct<NiColorData, RC_NiColorData> },
{ "NiPixelData", &construct<NiPixelData, RC_NiPixelData> },
{ "NiMorphData", &construct<NiMorphData, RC_NiMorphData> },
{ "NiKeyframeData", &construct<NiKeyframeData, RC_NiKeyframeData> },
{ "NiSkinData", &construct<NiSkinData, RC_NiSkinData> },
{ "NiUVData", &construct<NiUVData, RC_NiUVData> },
{ "NiPosData", &construct<NiPosData, RC_NiPosData> },
{ "NiParticlesData", &construct<NiParticlesData, RC_NiParticlesData> },
{ "NiRotatingParticlesData", &construct<NiRotatingParticlesData, RC_NiParticlesData> },
{ "NiAutoNormalParticlesData", &construct<NiParticlesData, RC_NiParticlesData> },
{ "NiSequenceStreamHelper", &construct<NiSequenceStreamHelper, RC_NiSequenceStreamHelper> },
{ "NiSourceTexture", &construct<NiSourceTexture, RC_NiSourceTexture> },
{ "NiSkinInstance", &construct<NiSkinInstance, RC_NiSkinInstance> },
{ "NiLookAtController", &construct<NiLookAtController, RC_NiLookAtController> },
{ "NiPalette", &construct<NiPalette, RC_NiPalette> },
{ "NiIntegerExtraData", &construct<NiIntegerExtraData, RC_NiIntegerExtraData> },
{ "NiIntegersExtraData", &construct<NiIntegersExtraData, RC_NiIntegersExtraData> },
{ "NiBinaryExtraData", &construct<NiBinaryExtraData, RC_NiBinaryExtraData> }, { "NiBinaryExtraData", &construct<NiBinaryExtraData, RC_NiBinaryExtraData> },
{ "NiBooleanExtraData", &construct<NiBooleanExtraData, RC_NiBooleanExtraData> }, { "NiBooleanExtraData", &construct<NiBooleanExtraData, RC_NiBooleanExtraData> },
{ "NiVectorExtraData", &construct<NiVectorExtraData, RC_NiVectorExtraData> },
{ "NiColorExtraData", &construct<NiVectorExtraData, RC_NiColorExtraData> }, { "NiColorExtraData", &construct<NiVectorExtraData, RC_NiColorExtraData> },
{ "NiFloatExtraData", &construct<NiFloatExtraData, RC_NiFloatExtraData> }, { "NiFloatExtraData", &construct<NiFloatExtraData, RC_NiFloatExtraData> },
{ "NiFloatsExtraData", &construct<NiFloatsExtraData, RC_NiFloatsExtraData> }, { "NiFloatsExtraData", &construct<NiFloatsExtraData, RC_NiFloatsExtraData> },
{ "NiIntegerExtraData", &construct<NiIntegerExtraData, RC_NiIntegerExtraData> },
{ "NiIntegersExtraData", &construct<NiIntegersExtraData, RC_NiIntegersExtraData> },
{ "NiVectorExtraData", &construct<NiVectorExtraData, RC_NiVectorExtraData> },
{ "NiStringPalette", &construct<NiStringPalette, RC_NiStringPalette> }, { "NiStringPalette", &construct<NiStringPalette, RC_NiStringPalette> },
{ "NiBoolData", &construct<NiBoolData, RC_NiBoolData> },
{ "NiSkinPartition", &construct<NiSkinPartition, RC_NiSkinPartition> }, // Bethesda bounds
{ "BSXFlags", &construct<NiIntegerExtraData, RC_BSXFlags> },
{ "BSBound", &construct<BSBound, RC_BSBound> }, { "BSBound", &construct<BSBound, RC_BSBound> },
{ "NiTransformData", &construct<NiKeyframeData, RC_NiKeyframeData> }, { "BSMultiBound", &construct<BSMultiBound, RC_BSMultiBound> },
{ "BSFadeNode", &construct<NiNode, RC_NiNode> }, { "BSMultiBoundOBB", &construct<BSMultiBoundOBB, RC_BSMultiBoundOBB> },
{ "BSLeafAnimNode", &construct<NiNode, RC_NiNode> }, { "BSMultiBoundSphere", &construct<BSMultiBoundSphere, RC_BSMultiBoundSphere> },
{ "BSTreeNode", &construct<BSTreeNode, RC_NiNode> },
{ "BSValueNode", &construct<BSValueNode, RC_NiNode> }, // Bethesda markers
{ "BSOrderedNode", &construct<BSOrderedNode, RC_NiNode> },
{ "BSMultiBoundNode", &construct<BSMultiBoundNode, RC_NiNode> },
{ "BSRangeNode", &construct<BSRangeNode, RC_NiNode> },
{ "BSBlastNode", &construct<BSRangeNode, RC_NiNode> },
{ "BSDamageStage", &construct<BSRangeNode, RC_NiNode> },
{ "bhkBlendController", &construct<bhkBlendController, RC_bhkBlendController> },
{ "BSMaterialEmittanceMultController",
&construct<NiFloatInterpController, RC_BSMaterialEmittanceMultController> },
{ "BSRefractionFirePeriodController",
&construct<NiSingleInterpController, RC_BSRefractionFirePeriodController> },
{ "BSRefractionStrengthController",
&construct<NiFloatInterpController, RC_BSRefractionStrengthController> },
{ "NiFloatInterpolator", &construct<NiFloatInterpolator, RC_NiFloatInterpolator> },
{ "NiBoolInterpolator", &construct<NiBoolInterpolator, RC_NiBoolInterpolator> },
{ "NiBoolTimelineInterpolator", &construct<NiBoolInterpolator, RC_NiBoolTimelineInterpolator> },
{ "NiPoint3Interpolator", &construct<NiPoint3Interpolator, RC_NiPoint3Interpolator> },
{ "NiTransformController", &construct<NiKeyframeController, RC_NiKeyframeController> },
{ "NiMultiTargetTransformController",
&construct<NiMultiTargetTransformController, RC_NiMultiTargetTransformController> },
{ "NiTransformInterpolator", &construct<NiTransformInterpolator, RC_NiTransformInterpolator> },
{ "NiColorInterpolator", &construct<NiColorInterpolator, RC_NiColorInterpolator> },
{ "BSShaderTextureSet", &construct<BSShaderTextureSet, RC_BSShaderTextureSet> },
{ "BSLODTriShape", &construct<BSLODTriShape, RC_BSLODTriShape> },
{ "BSShaderProperty", &construct<BSShaderProperty, RC_BSShaderProperty> },
{ "BSShaderPPLightingProperty", &construct<BSShaderPPLightingProperty, RC_BSShaderPPLightingProperty> },
{ "BSShaderNoLightingProperty", &construct<BSShaderNoLightingProperty, RC_BSShaderNoLightingProperty> },
{ "BSFurnitureMarker", &construct<BSFurnitureMarker, RC_BSFurnitureMarker> }, { "BSFurnitureMarker", &construct<BSFurnitureMarker, RC_BSFurnitureMarker> },
{ "BSFurnitureMarkerNode", &construct<BSFurnitureMarker, RC_BSFurnitureMarker> }, { "BSFurnitureMarkerNode", &construct<BSFurnitureMarker, RC_BSFurnitureMarker> },
{ "BSInvMarker", &construct<BSInvMarker, RC_BSInvMarker> },
// Other Bethesda records
{ "BSBehaviorGraphExtraData", &construct<BSBehaviorGraphExtraData, RC_BSBehaviorGraphExtraData> },
{ "BSXFlags", &construct<NiIntegerExtraData, RC_BSXFlags> },
// GEOMETRY
// 4.0.0.2
{ "NiAutoNormalParticles", &construct<NiParticles, RC_NiParticles> },
{ "NiAutoNormalParticlesData", &construct<NiParticlesData, RC_NiParticlesData> },
{ "NiLines", &construct<NiLines, RC_NiLines> },
{ "NiLinesData", &construct<NiLinesData, RC_NiLinesData> },
{ "NiParticles", &construct<NiParticles, RC_NiParticles> },
{ "NiParticlesData", &construct<NiParticlesData, RC_NiParticlesData> },
{ "NiRotatingParticles", &construct<NiParticles, RC_NiParticles> },
{ "NiRotatingParticlesData", &construct<NiRotatingParticlesData, RC_NiParticlesData> },
{ "NiSkinData", &construct<NiSkinData, RC_NiSkinData> },
{ "NiSkinInstance", &construct<NiSkinInstance, RC_NiSkinInstance> },
{ "NiSkinPartition", &construct<NiSkinPartition, RC_NiSkinPartition> },
{ "NiTriShape", &construct<NiTriShape, RC_NiTriShape> },
{ "NiTriShapeData", &construct<NiTriShapeData, RC_NiTriShapeData> },
{ "NiTriStrips", &construct<NiTriStrips, RC_NiTriStrips> },
{ "NiTriStripsData", &construct<NiTriStripsData, RC_NiTriStripsData> },
// Bethesda
{ "BSDismemberSkinInstance", &construct<BSDismemberSkinInstance, RC_BSDismemberSkinInstance> },
{ "BSTriShape", &construct<BSTriShape, RC_BSTriShape> },
{ "BSLODTriShape", &construct<BSLODTriShape, RC_BSLODTriShape> },
// PARTICLES
// Modifiers, 4.0.0.2
{ "NiGravity", &construct<NiGravity, RC_NiGravity> },
{ "NiParticleColorModifier", &construct<NiParticleColorModifier, RC_NiParticleColorModifier> },
{ "NiParticleGrowFade", &construct<NiParticleGrowFade, RC_NiParticleGrowFade> },
{ "NiParticleRotation", &construct<NiParticleRotation, RC_NiParticleRotation> },
// Colliders, 4.0.0.2
{ "NiPlanarCollider", &construct<NiPlanarCollider, RC_NiPlanarCollider> },
{ "NiSphericalCollider", &construct<NiSphericalCollider, RC_NiSphericalCollider> },
// PHYSICS
// Collision objects, Gamebryo
{ "NiCollisionObject", &construct<NiCollisionObject, RC_NiCollisionObject> }, { "NiCollisionObject", &construct<NiCollisionObject, RC_NiCollisionObject> },
// Collision objects, Bethesda
{ "bhkCollisionObject", &construct<bhkCollisionObject, RC_bhkCollisionObject> }, { "bhkCollisionObject", &construct<bhkCollisionObject, RC_bhkCollisionObject> },
{ "bhkSPCollisionObject", &construct<bhkCollisionObject, RC_bhkCollisionObject> },
{ "bhkPCollisionObject", &construct<bhkCollisionObject, RC_bhkCollisionObject> }, { "bhkPCollisionObject", &construct<bhkCollisionObject, RC_bhkCollisionObject> },
{ "BSDismemberSkinInstance", &construct<BSDismemberSkinInstance, RC_BSDismemberSkinInstance> }, { "bhkSPCollisionObject", &construct<bhkCollisionObject, RC_bhkCollisionObject> },
{ "NiControllerManager", &construct<NiControllerManager, RC_NiControllerManager> },
// Constraint records, Bethesda
{ "bhkHingeConstraint", &construct<bhkHingeConstraint, RC_bhkHingeConstraint> },
{ "bhkLimitedHingeConstraint", &construct<bhkLimitedHingeConstraint, RC_bhkLimitedHingeConstraint> },
{ "bhkRagdollConstraint", &construct<bhkRagdollConstraint, RC_bhkRagdollConstraint> },
// Physics body records, Bethesda
{ "bhkRigidBody", &construct<bhkRigidBody, RC_bhkRigidBody> },
{ "bhkRigidBodyT", &construct<bhkRigidBody, RC_bhkRigidBodyT> },
// Physics geometry records, Bethesda
{ "bhkBoxShape", &construct<bhkBoxShape, RC_bhkBoxShape> },
{ "bhkCapsuleShape", &construct<bhkCapsuleShape, RC_bhkCapsuleShape> },
{ "bhkCompressedMeshShape", &construct<bhkCompressedMeshShape, RC_bhkCompressedMeshShape> },
{ "bhkCompressedMeshShapeData", &construct<bhkCompressedMeshShapeData, RC_bhkCompressedMeshShapeData> },
{ "bhkConvexTransformShape", &construct<bhkConvexTransformShape, RC_bhkConvexTransformShape> },
{ "bhkConvexVerticesShape", &construct<bhkConvexVerticesShape, RC_bhkConvexVerticesShape> },
{ "bhkListShape", &construct<bhkListShape, RC_bhkListShape> },
{ "bhkMoppBvTreeShape", &construct<bhkMoppBvTreeShape, RC_bhkMoppBvTreeShape> }, { "bhkMoppBvTreeShape", &construct<bhkMoppBvTreeShape, RC_bhkMoppBvTreeShape> },
{ "bhkNiTriStripsShape", &construct<bhkNiTriStripsShape, RC_bhkNiTriStripsShape> }, { "bhkNiTriStripsShape", &construct<bhkNiTriStripsShape, RC_bhkNiTriStripsShape> },
{ "bhkPackedNiTriStripsShape", &construct<bhkPackedNiTriStripsShape, RC_bhkPackedNiTriStripsShape> }, { "bhkPackedNiTriStripsShape", &construct<bhkPackedNiTriStripsShape, RC_bhkPackedNiTriStripsShape> },
{ "hkPackedNiTriStripsData", &construct<hkPackedNiTriStripsData, RC_hkPackedNiTriStripsData> }, { "hkPackedNiTriStripsData", &construct<hkPackedNiTriStripsData, RC_hkPackedNiTriStripsData> },
{ "bhkConvexVerticesShape", &construct<bhkConvexVerticesShape, RC_bhkConvexVerticesShape> },
{ "bhkConvexTransformShape", &construct<bhkConvexTransformShape, RC_bhkConvexTransformShape> },
{ "bhkTransformShape", &construct<bhkConvexTransformShape, RC_bhkConvexTransformShape> },
{ "bhkSimpleShapePhantom", &construct<bhkSimpleShapePhantom, RC_bhkSimpleShapePhantom> }, { "bhkSimpleShapePhantom", &construct<bhkSimpleShapePhantom, RC_bhkSimpleShapePhantom> },
{ "bhkBoxShape", &construct<bhkBoxShape, RC_bhkBoxShape> },
{ "bhkCapsuleShape", &construct<bhkCapsuleShape, RC_bhkCapsuleShape> },
{ "bhkSphereShape", &construct<bhkSphereShape, RC_bhkSphereShape> }, { "bhkSphereShape", &construct<bhkSphereShape, RC_bhkSphereShape> },
{ "bhkListShape", &construct<bhkListShape, RC_bhkListShape> }, { "bhkTransformShape", &construct<bhkConvexTransformShape, RC_bhkConvexTransformShape> },
{ "bhkRigidBody", &construct<bhkRigidBody, RC_bhkRigidBody> },
{ "bhkRigidBodyT", &construct<bhkRigidBody, RC_bhkRigidBodyT> }, // PROPERTIES
{ "bhkRagdollConstraint", &construct<bhkRagdollConstraint, RC_bhkRagdollConstraint> },
{ "bhkHingeConstraint", &construct<bhkHingeConstraint, RC_bhkHingeConstraint> }, // 4.0.0.2
{ "bhkLimitedHingeConstraint", &construct<bhkLimitedHingeConstraint, RC_bhkLimitedHingeConstraint> }, { "NiAlphaProperty", &construct<NiAlphaProperty, RC_NiAlphaProperty> },
{ "NiDitherProperty", &construct<NiDitherProperty, RC_NiDitherProperty> },
{ "NiFogProperty", &construct<NiFogProperty, RC_NiFogProperty> },
{ "NiMaterialProperty", &construct<NiMaterialProperty, RC_NiMaterialProperty> },
{ "NiShadeProperty", &construct<NiShadeProperty, RC_NiShadeProperty> },
{ "NiSpecularProperty", &construct<NiSpecularProperty, RC_NiSpecularProperty> },
{ "NiStencilProperty", &construct<NiStencilProperty, RC_NiStencilProperty> },
{ "NiTexturingProperty", &construct<NiTexturingProperty, RC_NiTexturingProperty> },
{ "NiVertexColorProperty", &construct<NiVertexColorProperty, RC_NiVertexColorProperty> },
{ "NiWireframeProperty", &construct<NiWireframeProperty, RC_NiWireframeProperty> },
{ "NiZBufferProperty", &construct<NiZBufferProperty, RC_NiZBufferProperty> },
// Shader properties, Bethesda
{ "BSShaderProperty", &construct<BSShaderProperty, RC_BSShaderProperty> },
{ "BSShaderPPLightingProperty", &construct<BSShaderPPLightingProperty, RC_BSShaderPPLightingProperty> },
{ "BSShaderNoLightingProperty", &construct<BSShaderNoLightingProperty, RC_BSShaderNoLightingProperty> },
{ "BSLightingShaderProperty", &construct<BSLightingShaderProperty, RC_BSLightingShaderProperty> }, { "BSLightingShaderProperty", &construct<BSLightingShaderProperty, RC_BSLightingShaderProperty> },
{ "BSEffectShaderProperty", &construct<BSEffectShaderProperty, RC_BSEffectShaderProperty> }, { "BSEffectShaderProperty", &construct<BSEffectShaderProperty, RC_BSEffectShaderProperty> },
{ "NiSortAdjustNode", &construct<NiSortAdjustNode, RC_NiSortAdjustNode> },
{ "NiClusterAccumulator", &construct<NiClusterAccumulator, RC_NiClusterAccumulator> },
{ "NiAlphaAccumulator", &construct<NiAlphaAccumulator, RC_NiAlphaAccumulator> },
{ "NiSequence", &construct<NiSequence, RC_NiSequence> },
{ "NiControllerSequence", &construct<NiControllerSequence, RC_NiControllerSequence> },
{ "NiDefaultAVObjectPalette", &construct<NiDefaultAVObjectPalette, RC_NiDefaultAVObjectPalette> },
{ "NiBlendBoolInterpolator", &construct<NiBlendBoolInterpolator, RC_NiBlendBoolInterpolator> },
{ "NiBlendFloatInterpolator", &construct<NiBlendFloatInterpolator, RC_NiBlendFloatInterpolator> },
{ "NiBlendPoint3Interpolator", &construct<NiBlendPoint3Interpolator, RC_NiBlendPoint3Interpolator> },
{ "NiBlendTransformInterpolator",
&construct<NiBlendTransformInterpolator, RC_NiBlendTransformInterpolator> },
{ "bhkCompressedMeshShape", &construct<bhkCompressedMeshShape, RC_bhkCompressedMeshShape> },
{ "bhkCompressedMeshShapeData", &construct<bhkCompressedMeshShapeData, RC_bhkCompressedMeshShapeData> },
{ "BSMultiBound", &construct<BSMultiBound, RC_BSMultiBound> },
{ "BSMultiBoundOBB", &construct<BSMultiBoundOBB, RC_BSMultiBoundOBB> },
{ "BSMultiBoundSphere", &construct<BSMultiBoundSphere, RC_BSMultiBoundSphere> },
{ "BSInvMarker", &construct<BSInvMarker, RC_BSInvMarker> },
{ "BSTriShape", &construct<BSTriShape, RC_BSTriShape> },
{ "BSEffectShaderPropertyFloatController",
&construct<BSEffectShaderPropertyFloatController, RC_BSEffectShaderPropertyFloatController> },
{ "BSLightingShaderPropertyFloatController",
&construct<BSEffectShaderPropertyFloatController, RC_BSLightingShaderPropertyFloatController> },
{ "BSEffectShaderPropertyColorController",
&construct<BSEffectShaderPropertyColorController, RC_BSEffectShaderPropertyColorController> },
{ "BSLightingShaderPropertyColorController",
&construct<BSEffectShaderPropertyColorController, RC_BSLightingShaderPropertyColorController> },
{ "BSBehaviorGraphExtraData", &construct<BSBehaviorGraphExtraData, RC_BSBehaviorGraphExtraData> },
}; };
} }

@ -35,149 +35,148 @@ namespace Nif
enum RecordType enum RecordType
{ {
RC_MISSING = 0, RC_MISSING = 0,
RC_NiNode,
RC_NiSwitchNode,
RC_NiLODNode,
RC_NiFltAnimationNode,
RC_NiBillboardNode,
RC_AvoidNode, RC_AvoidNode,
RC_NiCollisionSwitch, RC_bhkBlendController,
RC_NiTriShape, RC_bhkBoxShape,
RC_NiTriStrips, RC_bhkCapsuleShape,
RC_NiLines, RC_bhkCollisionObject,
RC_NiParticles, RC_bhkCompressedMeshShape,
RC_bhkCompressedMeshShapeData,
RC_bhkConvexTransformShape,
RC_bhkConvexVerticesShape,
RC_bhkHingeConstraint,
RC_bhkLimitedHingeConstraint,
RC_bhkListShape,
RC_bhkMoppBvTreeShape,
RC_bhkNiTriStripsShape,
RC_bhkPackedNiTriStripsShape,
RC_bhkRagdollConstraint,
RC_bhkRigidBody,
RC_bhkRigidBodyT,
RC_bhkSimpleShapePhantom,
RC_bhkSphereShape,
RC_BSBehaviorGraphExtraData,
RC_BSBound,
RC_BSDismemberSkinInstance,
RC_BSEffectShaderProperty,
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_NiAlphaController,
RC_NiAlphaProperty,
RC_NiBillboardNode,
RC_NiBinaryExtraData,
RC_NiBlendBoolInterpolator,
RC_NiBlendFloatInterpolator,
RC_NiBlendPoint3Interpolator,
RC_NiBlendTransformInterpolator,
RC_NiBoolData,
RC_NiBooleanExtraData,
RC_NiBoolInterpolator,
RC_NiBoolTimelineInterpolator,
RC_NiBSAnimationNode,
RC_NiBSPArrayController,
RC_NiBSParticleNode, RC_NiBSParticleNode,
RC_NiCamera, RC_NiCamera,
RC_NiTexturingProperty, RC_NiClusterAccumulator,
RC_NiFogProperty, RC_NiCollisionObject,
RC_NiMaterialProperty, RC_NiCollisionSwitch,
RC_NiZBufferProperty, RC_NiColorData,
RC_NiAlphaProperty, RC_NiColorExtraData,
RC_NiVertexColorProperty, RC_NiColorInterpolator,
RC_NiShadeProperty, RC_NiControllerManager,
RC_NiControllerSequence,
RC_NiDefaultAVObjectPalette,
RC_NiDitherProperty, RC_NiDitherProperty,
RC_NiWireframeProperty, RC_NiExtraData,
RC_NiSpecularProperty, RC_NiFlipController,
RC_NiStencilProperty, RC_NiFloatData,
RC_NiVisController, RC_NiFloatExtraData,
RC_NiFloatInterpolator,
RC_NiFloatsExtraData,
RC_NiFltAnimationNode,
RC_NiFogProperty,
RC_NiGeomMorpherController, RC_NiGeomMorpherController,
RC_NiGravity,
RC_NiIntegerExtraData,
RC_NiIntegersExtraData,
RC_NiKeyframeController, RC_NiKeyframeController,
RC_NiAlphaController, RC_NiKeyframeData,
RC_NiRollController,
RC_NiUVController,
RC_NiPathController,
RC_NiMaterialColorController,
RC_NiBSPArrayController,
RC_NiParticleSystemController,
RC_NiFlipController,
RC_NiTextureTransformController,
RC_NiBSAnimationNode,
RC_NiLight, RC_NiLight,
RC_NiTextureEffect, RC_NiLines,
RC_NiExtraData, RC_NiLinesData,
RC_NiVertWeightsExtraData, RC_NiLODNode,
RC_NiTextKeyExtraData, RC_NiLookAtController,
RC_NiStringExtraData, RC_NiMaterialColorController,
RC_NiGravity, RC_NiMaterialProperty,
RC_NiPlanarCollider, RC_NiMorphData,
RC_NiParticleGrowFade, RC_NiMultiTargetTransformController,
RC_NiNode,
RC_NiPalette,
RC_NiParticleColorModifier, RC_NiParticleColorModifier,
RC_NiParticleGrowFade,
RC_NiParticleRotation, RC_NiParticleRotation,
RC_NiFloatData, RC_NiParticles,
RC_NiTriShapeData, RC_NiParticlesData,
RC_NiTriStripsData, RC_NiParticleSystemController,
RC_NiLinesData, RC_NiPathController,
RC_NiVisData,
RC_NiColorData,
RC_NiPixelData, RC_NiPixelData,
RC_NiMorphData, RC_NiPlanarCollider,
RC_NiKeyframeData, RC_NiPoint3Interpolator,
RC_NiSkinData,
RC_NiUVData,
RC_NiPosData, RC_NiPosData,
RC_NiRotatingParticlesData, RC_NiRollController,
RC_NiParticlesData, RC_NiSequence,
RC_NiSequenceStreamHelper, RC_NiSequenceStreamHelper,
RC_NiSourceTexture, RC_NiShadeProperty,
RC_NiSkinData,
RC_NiSkinInstance, RC_NiSkinInstance,
RC_RootCollisionNode, RC_NiSkinPartition,
RC_NiSortAdjustNode,
RC_NiSourceTexture,
RC_NiSpecularProperty,
RC_NiSphericalCollider, RC_NiSphericalCollider,
RC_NiLookAtController, RC_NiStencilProperty,
RC_NiPalette, RC_NiStringExtraData,
RC_NiIntegerExtraData,
RC_NiIntegersExtraData,
RC_NiBinaryExtraData,
RC_NiBooleanExtraData,
RC_NiVectorExtraData,
RC_NiColorExtraData,
RC_NiFloatExtraData,
RC_NiFloatsExtraData,
RC_NiStringPalette, RC_NiStringPalette,
RC_NiBoolData, RC_NiSwitchNode,
RC_NiSkinPartition, RC_NiTextKeyExtraData,
RC_BSXFlags, RC_NiTextureEffect,
RC_BSBound, RC_NiTextureTransformController,
RC_bhkBlendController, RC_NiTexturingProperty,
RC_BSMaterialEmittanceMultController,
RC_BSRefractionFirePeriodController,
RC_BSRefractionStrengthController,
RC_NiFloatInterpolator,
RC_NiPoint3Interpolator,
RC_NiBoolInterpolator,
RC_NiBoolTimelineInterpolator,
RC_NiTransformInterpolator, RC_NiTransformInterpolator,
RC_NiColorInterpolator, RC_NiTriShape,
RC_BSShaderTextureSet, RC_NiTriShapeData,
RC_BSLODTriShape, RC_NiTriStrips,
RC_BSShaderProperty, RC_NiTriStripsData,
RC_BSShaderPPLightingProperty, RC_NiUVController,
RC_BSShaderNoLightingProperty, RC_NiUVData,
RC_BSFurnitureMarker, RC_NiVectorExtraData,
RC_NiCollisionObject, RC_NiVertexColorProperty,
RC_bhkCollisionObject, RC_NiVertWeightsExtraData,
RC_BSDismemberSkinInstance, RC_NiVisController,
RC_NiControllerManager, RC_NiVisData,
RC_bhkMoppBvTreeShape, RC_NiWireframeProperty,
RC_bhkNiTriStripsShape, RC_NiZBufferProperty,
RC_bhkPackedNiTriStripsShape, RC_RootCollisionNode,
RC_hkPackedNiTriStripsData,
RC_bhkConvexVerticesShape,
RC_bhkConvexTransformShape,
RC_bhkSimpleShapePhantom,
RC_bhkBoxShape,
RC_bhkCapsuleShape,
RC_bhkSphereShape,
RC_bhkListShape,
RC_bhkRigidBody,
RC_bhkRigidBodyT,
RC_bhkRagdollConstraint,
RC_bhkHingeConstraint,
RC_bhkLimitedHingeConstraint,
RC_BSLightingShaderProperty,
RC_BSEffectShaderProperty,
RC_NiClusterAccumulator,
RC_NiAlphaAccumulator,
RC_NiSortAdjustNode,
RC_NiMultiTargetTransformController,
RC_NiSequence,
RC_NiControllerSequence,
RC_NiDefaultAVObjectPalette,
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,
}; };
/// Base class for all records /// Base class for all records

Loading…
Cancel
Save