/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Read(IStream s, List <uint> link_stack, NifInfo info) { base.Read(s, link_stack, info); Nif.NifStream(out alphaSortBound, s, info); Nif.NifStream(out staticBound, s, info); }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Write(OStream s, Dictionary <NiObject, uint> link_map, List <NiObject> missing_link_stack, NifInfo info) { base.Write(s, link_map, missing_link_stack, info); numRotationKeys = (byte)rotationKeys.Count; numColorKeys = (byte)colorKeys.Count; numSizeKeys = (byte)sizeKeys.Count; if (info.version >= 0x14060100) { Nif.NifStream(numSizeKeys, s, info); for (var i2 = 0; i2 < sizeKeys.Count; i2++) { Nif.NifStream(sizeKeys[i2], s, info, 1); } Nif.NifStream(sizeLoopBehavior, s, info); } Nif.NifStream(numColorKeys, s, info); for (var i1 = 0; i1 < colorKeys.Count; i1++) { Nif.NifStream(colorKeys[i1], s, info, 1); } if (info.version >= 0x14060100) { Nif.NifStream(colorLoopBehavior, s, info); Nif.NifStream(numRotationKeys, s, info); for (var i2 = 0; i2 < rotationKeys.Count; i2++) { Nif.NifStream(rotationKeys[i2], s, info, 1); } Nif.NifStream(rotationLoopBehavior, s, info); } Nif.NifStream(growTime, s, info); Nif.NifStream(shrinkTime, s, info); Nif.NifStream(growGeneration, s, info); Nif.NifStream(shrinkGeneration, s, info); }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Write(OStream s, Dictionary <NiObject, uint> link_map, List <NiObject> missing_link_stack, NifInfo info) { base.Write(s, link_map, missing_link_stack, info); numChunks = (uint)chunks.Count; numBigTris = (uint)bigTris.Count; numBigVerts = (uint)bigVerts.Count; numTransforms = (uint)chunkTransforms.Count; numMaterials = (uint)chunkMaterials.Count; numMaterials8 = (uint)materials8.Count; numMaterials16 = (uint)materials16.Count; numMaterials32 = (uint)materials32.Count; Nif.NifStream(bitsPerIndex, s, info); Nif.NifStream(bitsPerWIndex, s, info); Nif.NifStream(maskWIndex, s, info); Nif.NifStream(maskIndex, s, info); Nif.NifStream(error, s, info); Nif.NifStream(boundsMin, s, info); Nif.NifStream(boundsMax, s, info); Nif.NifStream(weldingType, s, info); Nif.NifStream(materialType, s, info); Nif.NifStream(numMaterials32, s, info); for (var i1 = 0; i1 < materials32.Count; i1++) { Nif.NifStream(materials32[i1], s, info); } Nif.NifStream(numMaterials16, s, info); for (var i1 = 0; i1 < materials16.Count; i1++) { Nif.NifStream(materials16[i1], s, info); } Nif.NifStream(numMaterials8, s, info); for (var i1 = 0; i1 < materials8.Count; i1++) { Nif.NifStream(materials8[i1], s, info); } Nif.NifStream(numMaterials, s, info); for (var i1 = 0; i1 < chunkMaterials.Count; i1++) { Nif.NifStream(chunkMaterials[i1].material, s, info); if ((info.version <= 0x14000005) && ((info.userVersion2 < 16))) { Nif.NifStream(chunkMaterials[i1].filter.layer_ob, s, info); } if (((info.version == 0x14020007) && (info.userVersion2 <= 34))) { Nif.NifStream(chunkMaterials[i1].filter.layer_fo, s, info); } if (((info.version == 0x14020007) && (info.userVersion2 > 34))) { Nif.NifStream(chunkMaterials[i1].filter.layer_sk, s, info); } Nif.NifStream(chunkMaterials[i1].filter.flagsAndPartNumber, s, info); Nif.NifStream(chunkMaterials[i1].filter.group, s, info); } Nif.NifStream(numNamedMaterials, s, info); Nif.NifStream(numTransforms, s, info); for (var i1 = 0; i1 < chunkTransforms.Count; i1++) { Nif.NifStream(chunkTransforms[i1].translation, s, info); Nif.NifStream(chunkTransforms[i1].rotation.x, s, info); Nif.NifStream(chunkTransforms[i1].rotation.y, s, info); Nif.NifStream(chunkTransforms[i1].rotation.z, s, info); Nif.NifStream(chunkTransforms[i1].rotation.w, s, info); } Nif.NifStream(numBigVerts, s, info); for (var i1 = 0; i1 < bigVerts.Count; i1++) { Nif.NifStream(bigVerts[i1], s, info); } Nif.NifStream(numBigTris, s, info); for (var i1 = 0; i1 < bigTris.Count; i1++) { Nif.NifStream(bigTris[i1].triangle1, s, info); Nif.NifStream(bigTris[i1].triangle2, s, info); Nif.NifStream(bigTris[i1].triangle3, s, info); Nif.NifStream(bigTris[i1].material, s, info); Nif.NifStream(bigTris[i1].weldingInfo, s, info); } Nif.NifStream(numChunks, s, info); for (var i1 = 0; i1 < chunks.Count; i1++) { chunks[i1].numWeldingInfo = (uint)chunks[i1].weldingInfo.Count; chunks[i1].numStrips = (uint)chunks[i1].strips.Count; chunks[i1].numIndices = (uint)chunks[i1].indices.Count; chunks[i1].numVertices = (uint)chunks[i1].vertices.Count; Nif.NifStream(chunks[i1].translation, s, info); Nif.NifStream(chunks[i1].materialIndex, s, info); Nif.NifStream(chunks[i1].reference, s, info); Nif.NifStream(chunks[i1].transformIndex, s, info); Nif.NifStream(chunks[i1].numVertices, s, info); for (var i2 = 0; i2 < chunks[i1].vertices.Count; i2++) { Nif.NifStream(chunks[i1].vertices[i2], s, info); } Nif.NifStream(chunks[i1].numIndices, s, info); for (var i2 = 0; i2 < chunks[i1].indices.Count; i2++) { Nif.NifStream(chunks[i1].indices[i2], s, info); } Nif.NifStream(chunks[i1].numStrips, s, info); for (var i2 = 0; i2 < chunks[i1].strips.Count; i2++) { Nif.NifStream(chunks[i1].strips[i2], s, info); } Nif.NifStream(chunks[i1].numWeldingInfo, s, info); for (var i2 = 0; i2 < chunks[i1].weldingInfo.Count; i2++) { Nif.NifStream(chunks[i1].weldingInfo[i2], s, info); } } Nif.NifStream(numConvexPieceA, s, info); }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Read(IStream s, List <uint> link_stack, NifInfo info) { base.Read(s, link_stack, info); }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Read(IStream s, List <uint> link_stack, NifInfo info) { base.Read(s, link_stack, info); Nif.NifStream(out handle, s, info); }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Write(OStream s, Dictionary <NiObject, uint> link_map, List <NiObject> missing_link_stack, NifInfo info) { base.Write(s, link_map, missing_link_stack, info); Nif.NifStream(unknownFloat1, s, info); Nif.NifStream(unknownShort1, s, info); Nif.NifStream(unknownFloat2, s, info); if (info.version <= 0x04020002) { Nif.NifStream(unknownShort2, s, info); } if (info.version >= 0x04020100) { Nif.NifStream(unknownFloat3, s, info); } Nif.NifStream(unknownFloat4, s, info); Nif.NifStream(unknownFloat5, s, info); }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Read(IStream s, List <uint> link_stack, NifInfo info) { uint block_num; base.Read(s, link_stack, info); Nif.NifStream(out malleable.type, s, info); Nif.NifStream(out malleable.numEntities, s, info); Nif.NifStream(out block_num, s, info); link_stack.Add(block_num); Nif.NifStream(out block_num, s, info); link_stack.Add(block_num); Nif.NifStream(out malleable.priority, s, info); if ((malleable.type == 0)) { Nif.NifStream(out malleable.ballAndSocket.pivotA, s, info); Nif.NifStream(out malleable.ballAndSocket.pivotB, s, info); } if ((malleable.type == 1)) { if (info.version <= 0x14000005) { Nif.NifStream(out malleable.hinge.pivotA, s, info); Nif.NifStream(out malleable.hinge.perpAxisInA1, s, info); Nif.NifStream(out malleable.hinge.perpAxisInA2, s, info); Nif.NifStream(out malleable.hinge.pivotB, s, info); Nif.NifStream(out malleable.hinge.axisB, s, info); } if (info.version >= 0x14020007) { Nif.NifStream(out malleable.hinge.axisA, s, info); Nif.NifStream(out (Vector4)malleable.hinge.perpAxisInA1, s, info); Nif.NifStream(out (Vector4)malleable.hinge.perpAxisInA2, s, info); Nif.NifStream(out (Vector4)malleable.hinge.pivotA, s, info); Nif.NifStream(out (Vector4)malleable.hinge.axisB, s, info); Nif.NifStream(out malleable.hinge.perpAxisInB1, s, info); Nif.NifStream(out malleable.hinge.perpAxisInB2, s, info); Nif.NifStream(out (Vector4)malleable.hinge.pivotB, s, info); } } if ((malleable.type == 2)) { if ((info.userVersion2 <= 16)) { Nif.NifStream(out malleable.limitedHinge.pivotA, s, info); Nif.NifStream(out malleable.limitedHinge.axisA, s, info); Nif.NifStream(out malleable.limitedHinge.perpAxisInA1, s, info); Nif.NifStream(out malleable.limitedHinge.perpAxisInA2, s, info); Nif.NifStream(out malleable.limitedHinge.pivotB, s, info); Nif.NifStream(out malleable.limitedHinge.axisB, s, info); Nif.NifStream(out malleable.limitedHinge.perpAxisInB2, s, info); } if ((info.userVersion2 > 16)) { Nif.NifStream(out (Vector4)malleable.limitedHinge.axisA, s, info); Nif.NifStream(out (Vector4)malleable.limitedHinge.perpAxisInA1, s, info); Nif.NifStream(out (Vector4)malleable.limitedHinge.perpAxisInA2, s, info); Nif.NifStream(out (Vector4)malleable.limitedHinge.pivotA, s, info); Nif.NifStream(out (Vector4)malleable.limitedHinge.axisB, s, info); Nif.NifStream(out malleable.limitedHinge.perpAxisInB1, s, info); Nif.NifStream(out (Vector4)malleable.limitedHinge.perpAxisInB2, s, info); Nif.NifStream(out (Vector4)malleable.limitedHinge.pivotB, s, info); } Nif.NifStream(out malleable.limitedHinge.minAngle, s, info); Nif.NifStream(out malleable.limitedHinge.maxAngle, s, info); Nif.NifStream(out malleable.limitedHinge.maxFriction, s, info); if ((info.version >= 0x14020007) && ((info.userVersion2 > 16))) { Nif.NifStream(out malleable.limitedHinge.motor.type, s, info); if ((malleable.limitedHinge.motor.type == 1)) { Nif.NifStream(out malleable.limitedHinge.motor.positionMotor.minForce, s, info); Nif.NifStream(out malleable.limitedHinge.motor.positionMotor.maxForce, s, info); Nif.NifStream(out malleable.limitedHinge.motor.positionMotor.tau, s, info); Nif.NifStream(out malleable.limitedHinge.motor.positionMotor.damping, s, info); Nif.NifStream(out malleable.limitedHinge.motor.positionMotor.proportionalRecoveryVelocity, s, info); Nif.NifStream(out malleable.limitedHinge.motor.positionMotor.constantRecoveryVelocity, s, info); Nif.NifStream(out malleable.limitedHinge.motor.positionMotor.motorEnabled, s, info); } if ((malleable.limitedHinge.motor.type == 2)) { Nif.NifStream(out malleable.limitedHinge.motor.velocityMotor.minForce, s, info); Nif.NifStream(out malleable.limitedHinge.motor.velocityMotor.maxForce, s, info); Nif.NifStream(out malleable.limitedHinge.motor.velocityMotor.tau, s, info); Nif.NifStream(out malleable.limitedHinge.motor.velocityMotor.targetVelocity, s, info); Nif.NifStream(out malleable.limitedHinge.motor.velocityMotor.useVelocityTarget, s, info); Nif.NifStream(out malleable.limitedHinge.motor.velocityMotor.motorEnabled, s, info); } if ((malleable.limitedHinge.motor.type == 3)) { Nif.NifStream(out malleable.limitedHinge.motor.springDamperMotor.minForce, s, info); Nif.NifStream(out malleable.limitedHinge.motor.springDamperMotor.maxForce, s, info); Nif.NifStream(out malleable.limitedHinge.motor.springDamperMotor.springConstant, s, info); Nif.NifStream(out malleable.limitedHinge.motor.springDamperMotor.springDamping, s, info); Nif.NifStream(out malleable.limitedHinge.motor.springDamperMotor.motorEnabled, s, info); } } } if ((malleable.type == 6)) { if (info.version <= 0x14000005) { Nif.NifStream(out malleable.prismatic.pivotA, s, info); Nif.NifStream(out malleable.prismatic.rotationA, s, info); Nif.NifStream(out malleable.prismatic.planeA, s, info); Nif.NifStream(out malleable.prismatic.slidingA, s, info); Nif.NifStream(out malleable.prismatic.slidingB, s, info); Nif.NifStream(out malleable.prismatic.pivotB, s, info); Nif.NifStream(out malleable.prismatic.rotationB, s, info); Nif.NifStream(out malleable.prismatic.planeB, s, info); } if (info.version >= 0x14020007) { Nif.NifStream(out (Vector4)malleable.prismatic.slidingA, s, info); Nif.NifStream(out (Vector4)malleable.prismatic.rotationA, s, info); Nif.NifStream(out (Vector4)malleable.prismatic.planeA, s, info); Nif.NifStream(out (Vector4)malleable.prismatic.pivotA, s, info); Nif.NifStream(out (Vector4)malleable.prismatic.slidingB, s, info); Nif.NifStream(out (Vector4)malleable.prismatic.rotationB, s, info); Nif.NifStream(out (Vector4)malleable.prismatic.planeB, s, info); Nif.NifStream(out (Vector4)malleable.prismatic.pivotB, s, info); } Nif.NifStream(out malleable.prismatic.minDistance, s, info); Nif.NifStream(out malleable.prismatic.maxDistance, s, info); Nif.NifStream(out malleable.prismatic.friction, s, info); if ((info.version >= 0x14020007) && ((info.userVersion2 > 16))) { Nif.NifStream(out malleable.prismatic.motor.type, s, info); if ((malleable.prismatic.motor.type == 1)) { Nif.NifStream(out malleable.prismatic.motor.positionMotor.minForce, s, info); Nif.NifStream(out malleable.prismatic.motor.positionMotor.maxForce, s, info); Nif.NifStream(out malleable.prismatic.motor.positionMotor.tau, s, info); Nif.NifStream(out malleable.prismatic.motor.positionMotor.damping, s, info); Nif.NifStream(out malleable.prismatic.motor.positionMotor.proportionalRecoveryVelocity, s, info); Nif.NifStream(out malleable.prismatic.motor.positionMotor.constantRecoveryVelocity, s, info); Nif.NifStream(out malleable.prismatic.motor.positionMotor.motorEnabled, s, info); } if ((malleable.prismatic.motor.type == 2)) { Nif.NifStream(out malleable.prismatic.motor.velocityMotor.minForce, s, info); Nif.NifStream(out malleable.prismatic.motor.velocityMotor.maxForce, s, info); Nif.NifStream(out malleable.prismatic.motor.velocityMotor.tau, s, info); Nif.NifStream(out malleable.prismatic.motor.velocityMotor.targetVelocity, s, info); Nif.NifStream(out malleable.prismatic.motor.velocityMotor.useVelocityTarget, s, info); Nif.NifStream(out malleable.prismatic.motor.velocityMotor.motorEnabled, s, info); } if ((malleable.prismatic.motor.type == 3)) { Nif.NifStream(out malleable.prismatic.motor.springDamperMotor.minForce, s, info); Nif.NifStream(out malleable.prismatic.motor.springDamperMotor.maxForce, s, info); Nif.NifStream(out malleable.prismatic.motor.springDamperMotor.springConstant, s, info); Nif.NifStream(out malleable.prismatic.motor.springDamperMotor.springDamping, s, info); Nif.NifStream(out malleable.prismatic.motor.springDamperMotor.motorEnabled, s, info); } } } if ((malleable.type == 7)) { if ((info.userVersion2 <= 16)) { Nif.NifStream(out malleable.ragdoll.pivotA, s, info); Nif.NifStream(out malleable.ragdoll.planeA, s, info); Nif.NifStream(out malleable.ragdoll.twistA, s, info); Nif.NifStream(out malleable.ragdoll.pivotB, s, info); Nif.NifStream(out malleable.ragdoll.planeB, s, info); Nif.NifStream(out malleable.ragdoll.twistB, s, info); } if ((info.userVersion2 > 16)) { Nif.NifStream(out (Vector4)malleable.ragdoll.twistA, s, info); Nif.NifStream(out (Vector4)malleable.ragdoll.planeA, s, info); Nif.NifStream(out malleable.ragdoll.motorA, s, info); Nif.NifStream(out (Vector4)malleable.ragdoll.pivotA, s, info); Nif.NifStream(out (Vector4)malleable.ragdoll.twistB, s, info); Nif.NifStream(out (Vector4)malleable.ragdoll.planeB, s, info); Nif.NifStream(out malleable.ragdoll.motorB, s, info); Nif.NifStream(out (Vector4)malleable.ragdoll.pivotB, s, info); } Nif.NifStream(out malleable.ragdoll.coneMaxAngle, s, info); Nif.NifStream(out malleable.ragdoll.planeMinAngle, s, info); Nif.NifStream(out malleable.ragdoll.planeMaxAngle, s, info); Nif.NifStream(out malleable.ragdoll.twistMinAngle, s, info); Nif.NifStream(out malleable.ragdoll.twistMaxAngle, s, info); Nif.NifStream(out malleable.ragdoll.maxFriction, s, info); if ((info.version >= 0x14020007) && ((info.userVersion2 > 16))) { Nif.NifStream(out malleable.ragdoll.motor.type, s, info); if ((malleable.ragdoll.motor.type == 1)) { Nif.NifStream(out malleable.ragdoll.motor.positionMotor.minForce, s, info); Nif.NifStream(out malleable.ragdoll.motor.positionMotor.maxForce, s, info); Nif.NifStream(out malleable.ragdoll.motor.positionMotor.tau, s, info); Nif.NifStream(out malleable.ragdoll.motor.positionMotor.damping, s, info); Nif.NifStream(out malleable.ragdoll.motor.positionMotor.proportionalRecoveryVelocity, s, info); Nif.NifStream(out malleable.ragdoll.motor.positionMotor.constantRecoveryVelocity, s, info); Nif.NifStream(out malleable.ragdoll.motor.positionMotor.motorEnabled, s, info); } if ((malleable.ragdoll.motor.type == 2)) { Nif.NifStream(out malleable.ragdoll.motor.velocityMotor.minForce, s, info); Nif.NifStream(out malleable.ragdoll.motor.velocityMotor.maxForce, s, info); Nif.NifStream(out malleable.ragdoll.motor.velocityMotor.tau, s, info); Nif.NifStream(out malleable.ragdoll.motor.velocityMotor.targetVelocity, s, info); Nif.NifStream(out malleable.ragdoll.motor.velocityMotor.useVelocityTarget, s, info); Nif.NifStream(out malleable.ragdoll.motor.velocityMotor.motorEnabled, s, info); } if ((malleable.ragdoll.motor.type == 3)) { Nif.NifStream(out malleable.ragdoll.motor.springDamperMotor.minForce, s, info); Nif.NifStream(out malleable.ragdoll.motor.springDamperMotor.maxForce, s, info); Nif.NifStream(out malleable.ragdoll.motor.springDamperMotor.springConstant, s, info); Nif.NifStream(out malleable.ragdoll.motor.springDamperMotor.springDamping, s, info); Nif.NifStream(out malleable.ragdoll.motor.springDamperMotor.motorEnabled, s, info); } } } if ((malleable.type == 8)) { Nif.NifStream(out malleable.stiffSpring.pivotA, s, info); Nif.NifStream(out malleable.stiffSpring.pivotB, s, info); Nif.NifStream(out malleable.stiffSpring.length, s, info); } if (info.version <= 0x14000005) { Nif.NifStream(out malleable.tau, s, info); Nif.NifStream(out malleable.damping, s, info); } if (info.version >= 0x14020007) { Nif.NifStream(out malleable.strength, s, info); } }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Write(OStream s, Dictionary <NiObject, uint> link_map, List <NiObject> missing_link_stack, NifInfo info) { base.Write(s, link_map, missing_link_stack, info); data.numKeys = (uint)data.keys.Count; Nif.NifStream(data.numKeys, s, info); if ((data.numKeys != 0)) { Nif.NifStream(data.interpolation, s, info); } for (var i3 = 0; i3 < data.keys.Count; i3++) { Nif.NifStream(data.keys[i3], s, info, data.interpolation); } }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Write(OStream s, Dictionary <NiObject, uint> link_map, List <NiObject> missing_link_stack, NifInfo info) { base.Write(s, link_map, missing_link_stack, info); numScales = (uint)scales.Count; Nif.NifStream(numScales, s, info); for (var i1 = 0; i1 < scales.Count; i1++) { Nif.NifStream(scales[i1], s, info); } }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Write(OStream s, Dictionary <NiObject, uint> link_map, List <NiObject> missing_link_stack, NifInfo info) { base.Write(s, link_map, missing_link_stack, info); Nif.NifStream(direction, s, info); Nif.NifStream(airFriction, s, info); Nif.NifStream(inheritVelocity, s, info); Nif.NifStream(inheritRotation, s, info); Nif.NifStream(componentOnly, s, info); Nif.NifStream(enableSpread, s, info); Nif.NifStream(spread, s, info); }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Write(OStream s, Dictionary <NiObject, uint> link_map, List <NiObject> missing_link_stack, NifInfo info) { base.Write(s, link_map, missing_link_stack, info); count = (uint)unknownArray.Count; Nif.NifStream(name, s, info); Nif.NifStream(hasData, s, info); if (hasData) { for (var i2 = 0; i2 < 21; i2++) { Nif.NifStream(unknownFloats1[i2], s, info); } Nif.NifStream(unknownShort, s, info); WriteRef((NiObject)child, s, info, link_map, missing_link_stack); for (var i2 = 0; i2 < 12; i2++) { Nif.NifStream(unknownFloats2[i2], s, info); } Nif.NifStream(count, s, info); for (var i2 = 0; i2 < unknownArray.Count; i2++) { for (var i3 = 0; i3 < 5; i3++) { Nif.NifStream(unknownArray[i2][i3], s, info); } } } }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void FixLinks(Dictionary <uint, NiObject> objects, List <uint> link_stack, List <NiObject> missing_link_stack, NifInfo info) { base.FixLinks(objects, link_stack, missing_link_stack, info); data = FixLink <NiMorphData>(objects, link_stack, missing_link_stack, info); if (info.version >= 0x0A01006A && info.version <= 0x14000005) { for (var i4 = 0; i4 < interpolators.Count; i4++) { interpolators[i4] = FixLink <NiInterpolator>(objects, link_stack, missing_link_stack, info); } } if (info.version >= 0x14010003) { for (var i4 = 0; i4 < interpolatorWeights.Count; i4++) { interpolatorWeights[i4].interpolator = FixLink <NiInterpolator>(objects, link_stack, missing_link_stack, info); } } }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Write(OStream s, Dictionary <NiObject, uint> link_map, List <NiObject> missing_link_stack, NifInfo info) { base.Write(s, link_map, missing_link_stack, info); numUnknownInts = (uint)unknownInts.Count; numInterpolators = (uint)interpolators.Count; if (info.version >= 0x0A000102) { Nif.NifStream(extraFlags, s, info); } WriteRef((NiObject)data, s, info, link_map, missing_link_stack); if (info.version >= 0x04000001) { Nif.NifStream(alwaysUpdate, s, info); } if (info.version >= 0x0A01006A) { Nif.NifStream(numInterpolators, s, info); } if (info.version >= 0x0A01006A && info.version <= 0x14000005) { for (var i4 = 0; i4 < interpolators.Count; i4++) { WriteRef((NiObject)interpolators[i4], s, info, link_map, missing_link_stack); } } if (info.version >= 0x14010003) { for (var i4 = 0; i4 < interpolatorWeights.Count; i4++) { WriteRef((NiObject)interpolatorWeights[i4].interpolator, s, info, link_map, missing_link_stack); Nif.NifStream(interpolatorWeights[i4].weight, s, info); } } if (info.version >= 0x0A020000 && info.version <= 0x14000005 && ((info.userVersion2 > 9))) { Nif.NifStream(numUnknownInts, s, info); for (var i4 = 0; i4 < unknownInts.Count; i4++) { Nif.NifStream(unknownInts[i4], s, info); } } }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Write(OStream s, Dictionary <NiObject, uint> link_map, List <NiObject> missing_link_stack, NifInfo info) { base.Write(s, link_map, missing_link_stack, info); Nif.NifStream(transform.translation, s, info); Nif.NifStream(transform.rotation, s, info); Nif.NifStream(transform.scale, s, info); if (info.version <= 0x0A01006D) { for (var i2 = 0; i2 < 3; i2++) { { bool tmp = transform.trsValid[i2]; Nif.NifStream(tmp, s, info); } } } Nif.NifStream(translationHandle, s, info); Nif.NifStream(rotationHandle, s, info); Nif.NifStream(scaleHandle, s, info); }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Write(OStream s, Dictionary <NiObject, uint> link_map, List <NiObject> missing_link_stack, NifInfo info) { base.Write(s, link_map, missing_link_stack, info); numSubShapes = (uint)subShapes.Count; Nif.NifStream(numSubShapes, s, info); for (var i1 = 0; i1 < subShapes.Count; i1++) { WriteRef((NiObject)subShapes[i1], s, info, link_map, missing_link_stack); } if (info.version <= 0x0A000102) { Nif.NifStream(material.unknownInt, s, info); } if ((info.version <= 0x14000005) && ((info.userVersion2 < 16))) { Nif.NifStream(material.material_ob, s, info); } if (((info.version == 0x14020007) && (info.userVersion2 <= 34))) { Nif.NifStream(material.material_fo, s, info); } if (((info.version == 0x14020007) && (info.userVersion2 > 34))) { Nif.NifStream(material.material_sk, s, info); } Nif.NifStream(radius, s, info); Nif.NifStream(unknownInt1, s, info); Nif.NifStream(unknownFloat1, s, info); Nif.NifStream(childShapeProperty.data, s, info); Nif.NifStream(childShapeProperty.size, s, info); Nif.NifStream(childShapeProperty.capacityAndFlags, s, info); Nif.NifStream(unknownByte1, s, info); Nif.NifStream(unknownFloat2, s, info); }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Write(OStream s, Dictionary <NiObject, uint> link_map, List <NiObject> missing_link_stack, NifInfo info) { base.Write(s, link_map, missing_link_stack, info); Nif.NifStream(pixelFormat, s, info); if (info.version <= 0x0A030002) { Nif.NifStream(redMask, s, info); Nif.NifStream(greenMask, s, info); Nif.NifStream(blueMask, s, info); Nif.NifStream(alphaMask, s, info); Nif.NifStream(bitsPerPixel, s, info); for (var i2 = 0; i2 < 8; i2++) { Nif.NifStream(oldFastCompare[i2], s, info); } } if ((info.version >= 0x0A010000) && (info.version <= 0x0A030002)) { Nif.NifStream(tiling, s, info); } if (info.version >= 0x0A030003) { Nif.NifStream((byte)bitsPerPixel, s, info); Nif.NifStream(rendererHint, s, info); Nif.NifStream(extraData, s, info); Nif.NifStream(flags, s, info); Nif.NifStream((PixelTiling)tiling, s, info); } if (info.version >= 0x14030004) { Nif.NifStream(srgbSpace, s, info); } if (info.version >= 0x0A030003) { for (var i2 = 0; i2 < 4; i2++) { Nif.NifStream(channels[i2].type, s, info); Nif.NifStream(channels[i2].convention, s, info); Nif.NifStream(channels[i2].bitsPerChannel, s, info); Nif.NifStream(channels[i2].isSigned, s, info); } } }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void FixLinks(Dictionary <uint, NiObject> objects, List <uint> link_stack, List <NiObject> missing_link_stack, NifInfo info) { base.FixLinks(objects, link_stack, missing_link_stack, info); for (var i1 = 0; i1 < subShapes.Count; i1++) { subShapes[i1] = FixLink <bhkConvexShape>(objects, link_stack, missing_link_stack, info); } }
/*! * Returns the number of references that currently exist for this object. * \return The number of references to this object that are in use. */ //uint GetNumRefs(); /*! NIFLIB_HIDDEN function. For internal use only. */ protected abstract void Read(StreamReader s, List <uint> link_stack, NifInfo info);
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Write(OStream s, Dictionary <NiObject, uint> link_map, List <NiObject> missing_link_stack, NifInfo info) { base.Write(s, link_map, missing_link_stack, info); height = (uint)((rgbImageData.Count > 0) ? rgbImageData[0].Count : 0); width = (uint)rgbImageData.Count; Nif.NifStream(width, s, info); Nif.NifStream(height, s, info); Nif.NifStream(imageType, s, info); if ((imageType == 1)) { for (var i2 = 0; i2 < rgbImageData.Count; i2++) { for (var i3 = 0; i3 < rgbImageData[i2].Count; i3++) { Nif.NifStream(rgbImageData[i2][i3].r, s, info); Nif.NifStream(rgbImageData[i2][i3].g, s, info); Nif.NifStream(rgbImageData[i2][i3].b, s, info); } } } if ((imageType == 2)) { for (var i2 = 0; i2 < rgbaImageData.Count; i2++) { for (var i3 = 0; i3 < rgbaImageData[i2].Count; i3++) { Nif.NifStream(rgbaImageData[i2][i3].r, s, info); Nif.NifStream(rgbaImageData[i2][i3].g, s, info); Nif.NifStream(rgbaImageData[i2][i3].b, s, info); Nif.NifStream(rgbaImageData[i2][i3].a, s, info); } } } }
/*! NIFLIB_HIDDEN function. For internal use only. */ protected abstract void Write(StreamWriter s, Dictionary <NiObject, uint> link_map, List <NiObject> missing_link_stack, NifInfo info);
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void FixLinks(Dictionary <uint, NiObject> objects, List <uint> link_stack, List <NiObject> missing_link_stack, NifInfo info) { base.FixLinks(objects, link_stack, missing_link_stack, info); malleable.entityA = FixLink <bhkEntity>(objects, link_stack, missing_link_stack, info); malleable.entityB = FixLink <bhkEntity>(objects, link_stack, missing_link_stack, info); }
/*! NIFLIB_HIDDEN function. For internal use only. */ protected abstract void FixLinks(Dictionary <uint, NiObject> objects, List <uint> link_stack, List <NiObject> missing_link_stack, NifInfo info);
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Write(OStream s, Dictionary <NiObject, uint> link_map, List <NiObject> missing_link_stack, NifInfo info) { base.Write(s, link_map, missing_link_stack, info); WriteRef((NiObject)root, s, info, link_map, missing_link_stack); for (var i1 = 0; i1 < 5; i1++) { Nif.NifStream(unknownBytes[i1], s, info); } }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Write(OStream s, Dictionary <NiObject, uint> link_map, List <NiObject> missing_link_stack, NifInfo info) { base.Write(s, link_map, missing_link_stack, info); num2 = (uint)(unknown2.Count > 0 ? unknown2[0].Count : 0); num1 = (uint)unknown2.Count; for (var i3 = 0; i3 < 40; i3++) { Nif.NifStream(unknown1[i3], s, info); } WriteRef((NiObject)parent, s, info, link_map, missing_link_stack); Nif.NifStream(num1, s, info); Nif.NifStream(num2, s, info); for (var i3 = 0; i3 < unknown2.Count; i3++) { for (var i4 = 0; i4 < unknown2[i3].Count; i4++) { Nif.NifStream(unknown2[i3][i4], s, info); } } }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Write(OStream s, Dictionary <NiObject, uint> link_map, List <NiObject> missing_link_stack, NifInfo info) { base.Write(s, link_map, missing_link_stack, info); Nif.NifStream(handle, s, info); }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Write(OStream s, Dictionary <NiObject, uint> link_map, List <NiObject> missing_link_stack, NifInfo info) { base.Write(s, link_map, missing_link_stack, info); WriteRef((NiObject)data, s, info, link_map, missing_link_stack); }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Read(IStream s, List <uint> link_stack, NifInfo info) { base.Read(s, link_stack, info); Nif.NifStream(out bitsPerIndex, s, info); Nif.NifStream(out bitsPerWIndex, s, info); Nif.NifStream(out maskWIndex, s, info); Nif.NifStream(out maskIndex, s, info); Nif.NifStream(out error, s, info); Nif.NifStream(out boundsMin, s, info); Nif.NifStream(out boundsMax, s, info); Nif.NifStream(out weldingType, s, info); Nif.NifStream(out materialType, s, info); Nif.NifStream(out numMaterials32, s, info); materials32 = new uint[numMaterials32]; for (var i1 = 0; i1 < materials32.Count; i1++) { Nif.NifStream(out materials32[i1], s, info); } Nif.NifStream(out numMaterials16, s, info); materials16 = new uint[numMaterials16]; for (var i1 = 0; i1 < materials16.Count; i1++) { Nif.NifStream(out materials16[i1], s, info); } Nif.NifStream(out numMaterials8, s, info); materials8 = new uint[numMaterials8]; for (var i1 = 0; i1 < materials8.Count; i1++) { Nif.NifStream(out materials8[i1], s, info); } Nif.NifStream(out numMaterials, s, info); chunkMaterials = new bhkCMSDMaterial[numMaterials]; for (var i1 = 0; i1 < chunkMaterials.Count; i1++) { Nif.NifStream(out chunkMaterials[i1].material, s, info); if ((info.version <= 0x14000005) && ((info.userVersion2 < 16))) { Nif.NifStream(out chunkMaterials[i1].filter.layer_ob, s, info); } if (((info.version == 0x14020007) && (info.userVersion2 <= 34))) { Nif.NifStream(out chunkMaterials[i1].filter.layer_fo, s, info); } if (((info.version == 0x14020007) && (info.userVersion2 > 34))) { Nif.NifStream(out chunkMaterials[i1].filter.layer_sk, s, info); } Nif.NifStream(out chunkMaterials[i1].filter.flagsAndPartNumber, s, info); Nif.NifStream(out chunkMaterials[i1].filter.group, s, info); } Nif.NifStream(out numNamedMaterials, s, info); Nif.NifStream(out numTransforms, s, info); chunkTransforms = new bhkCMSDTransform[numTransforms]; for (var i1 = 0; i1 < chunkTransforms.Count; i1++) { Nif.NifStream(out chunkTransforms[i1].translation, s, info); Nif.NifStream(out chunkTransforms[i1].rotation.x, s, info); Nif.NifStream(out chunkTransforms[i1].rotation.y, s, info); Nif.NifStream(out chunkTransforms[i1].rotation.z, s, info); Nif.NifStream(out chunkTransforms[i1].rotation.w, s, info); } Nif.NifStream(out numBigVerts, s, info); bigVerts = new Vector4[numBigVerts]; for (var i1 = 0; i1 < bigVerts.Count; i1++) { Nif.NifStream(out bigVerts[i1], s, info); } Nif.NifStream(out numBigTris, s, info); bigTris = new bhkCMSDBigTris[numBigTris]; for (var i1 = 0; i1 < bigTris.Count; i1++) { Nif.NifStream(out bigTris[i1].triangle1, s, info); Nif.NifStream(out bigTris[i1].triangle2, s, info); Nif.NifStream(out bigTris[i1].triangle3, s, info); Nif.NifStream(out bigTris[i1].material, s, info); Nif.NifStream(out bigTris[i1].weldingInfo, s, info); } Nif.NifStream(out numChunks, s, info); chunks = new bhkCMSDChunk[numChunks]; for (var i1 = 0; i1 < chunks.Count; i1++) { Nif.NifStream(out chunks[i1].translation, s, info); Nif.NifStream(out chunks[i1].materialIndex, s, info); Nif.NifStream(out chunks[i1].reference, s, info); Nif.NifStream(out chunks[i1].transformIndex, s, info); Nif.NifStream(out chunks[i1].numVertices, s, info); chunks[i1].vertices = new ushort[chunks[i1].numVertices]; for (var i2 = 0; i2 < chunks[i1].vertices.Count; i2++) { Nif.NifStream(out chunks[i1].vertices[i2], s, info); } Nif.NifStream(out chunks[i1].numIndices, s, info); chunks[i1].indices = new ushort[chunks[i1].numIndices]; for (var i2 = 0; i2 < chunks[i1].indices.Count; i2++) { Nif.NifStream(out chunks[i1].indices[i2], s, info); } Nif.NifStream(out chunks[i1].numStrips, s, info); chunks[i1].strips = new ushort[chunks[i1].numStrips]; for (var i2 = 0; i2 < chunks[i1].strips.Count; i2++) { Nif.NifStream(out chunks[i1].strips[i2], s, info); } Nif.NifStream(out chunks[i1].numWeldingInfo, s, info); chunks[i1].weldingInfo = new ushort[chunks[i1].numWeldingInfo]; for (var i2 = 0; i2 < chunks[i1].weldingInfo.Count; i2++) { Nif.NifStream(out chunks[i1].weldingInfo[i2], s, info); } } Nif.NifStream(out numConvexPieceA, s, info); }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Write(OStream s, Dictionary <NiObject, uint> link_map, List <NiObject> missing_link_stack, NifInfo info) { base.Write(s, link_map, missing_link_stack, info); numComponents = (uint)componentFormats.Count; numRegions = (uint)regions.Count; numBytes = (uint)data.Count; Nif.NifStream(numBytes, s, info); Nif.NifStream(cloningBehavior, s, info); Nif.NifStream(numRegions, s, info); for (var i3 = 0; i3 < regions.Count; i3++) { Nif.NifStream(regions[i3].startIndex, s, info); Nif.NifStream(regions[i3].numIndices, s, info); } Nif.NifStream(numComponents, s, info); for (var i3 = 0; i3 < componentFormats.Count; i3++) { Nif.NifStream(componentFormats[i3], s, info); } for (var i3 = 0; i3 < data.Count; i3++) { Nif.NifStream(data[i3], s, info); } Nif.NifStream(streamable, s, info); }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void FixLinks(Dictionary <uint, NiObject> objects, List <uint> link_stack, List <NiObject> missing_link_stack, NifInfo info) { base.FixLinks(objects, link_stack, missing_link_stack, info); }
/*! NIFLIB_HIDDEN function. For internal use only. */ internal override void Write(OStream s, Dictionary <NiObject, uint> link_map, List <NiObject> missing_link_stack, NifInfo info) { base.Write(s, link_map, missing_link_stack, info); if (info.version >= 0x03000000 && info.version <= 0x0A000102) { Nif.NifStream(flags, s, info); } if ((info.userVersion2 < 26)) { Nif.NifStream(ambientColor, s, info); Nif.NifStream(diffuseColor, s, info); } Nif.NifStream(specularColor, s, info); Nif.NifStream(emissiveColor, s, info); Nif.NifStream(glossiness, s, info); Nif.NifStream(alpha, s, info); if ((info.userVersion2 > 21)) { Nif.NifStream(emissiveMult, s, info); } }