public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); s.WriteStringPointer(bw, m_name); s.WriteClassPointer <hclBufferSetupObject>(bw, m_inputBufferSetupObject); m_inputTriangleSelection.Write(s, bw); s.WriteClassPointer <hclBufferSetupObject>(bw, m_outputBufferSetupObject); m_outputVertexSelection.Write(s, bw); m_influenceRadiusPerVertex.Write(s, bw); bw.WriteUInt32((uint)m_scaleNormalBehaviour); bw.WriteUInt32(m_maxTrianglesPerVertex); bw.WriteSingle(m_minimumTriangleWeight); bw.WriteBoolean(m_deformNormals); bw.WriteBoolean(m_deformTangents); bw.WriteBoolean(m_deformBiTangents); bw.WriteBoolean(m_useMeshTopology); }
public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); bw.WriteUInt64(0); m_atoms.Write(s, bw); s.WriteClassArray <hkpPoweredChainDataConstraintInfo>(bw, m_infos); bw.WriteSingle(m_tau); bw.WriteSingle(m_damping); bw.WriteSingle(m_cfmLinAdd); bw.WriteSingle(m_cfmLinMul); bw.WriteSingle(m_cfmAngAdd); bw.WriteSingle(m_cfmAngMul); bw.WriteSingle(m_maxErrorDistance); bw.WriteUInt32(0); }
public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); s.WriteVector4(bw, m_scaling); bw.WriteInt32(m_numBitsForSubpartIndex); bw.WriteUInt32(0); s.WriteClassArray <hkpMeshShapeSubpart>(bw, m_subparts); s.WriteUInt16Array(bw, m_weldingInfo); bw.WriteByte((byte)m_weldingType); bw.WriteUInt16(0); bw.WriteByte(0); bw.WriteSingle(m_radius); bw.WriteInt32(m_pad_0); bw.WriteInt32(m_pad_1); bw.WriteInt32(m_pad_2); bw.WriteUInt32(0); }
public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); s.WriteStringPointer(bw, m_name); s.WriteClassPointer <hclSimulationSetupMesh>(bw, m_simulationMesh); s.WriteClassPointer <hclBufferSetupObject>(bw, m_referenceBufferSetup); m_vertexSelection.Write(s, bw); m_maximumDistance.Write(s, bw); m_minNormalDistance.Write(s, bw); m_maxNormalDistance.Write(s, bw); bw.WriteSingle(m_stiffness); bw.WriteUInt32((uint)m_localRangeShape); bw.WriteBoolean(m_useMinNormalDistance); bw.WriteBoolean(m_useMaxNormalDistance); bw.WriteUInt32(0); bw.WriteUInt16(0); }
public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); s.WriteClassPointer <hkbGenerator>(bw, m_child); bw.WriteInt32((int)m_offsetType); bw.WriteInt32(m_taeId); bw.WriteInt32(m_valIndex); bw.WriteSingle(m_valRate); bw.WriteBoolean(m_enableTae); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt32(0); bw.WriteUInt16(0); bw.WriteByte(0); }
public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); bw.WriteByte(0); bw.WriteByte(m_forceCollideOntoPpu); bw.WriteUInt16(0); m_broadPhaseHandle.Write(s, bw); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteSingle(m_allowedPenetrationDepth); bw.WriteUInt32(0); }
public virtual void Write(PackFileSerializer s, BinaryWriterEx bw) { s.WriteClassPointer <hclTransformSetSetupObject>(bw, m_transferMotionTransformSetSetup); s.WriteStringPointer(bw, m_transferMotionTransformName); bw.WriteBoolean(m_transferTranslationMotion); bw.WriteUInt16(0); bw.WriteByte(0); bw.WriteSingle(m_minTranslationSpeed); bw.WriteSingle(m_maxTranslationSpeed); bw.WriteSingle(m_minTranslationBlend); bw.WriteSingle(m_maxTranslationBlend); bw.WriteBoolean(m_transferRotationMotion); bw.WriteUInt16(0); bw.WriteByte(0); bw.WriteSingle(m_minRotationSpeed); bw.WriteSingle(m_maxRotationSpeed); bw.WriteSingle(m_minRotationBlend); bw.WriteSingle(m_maxRotationBlend); }
public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); m_volumeAabb.Write(s, bw); bw.WriteSingle(m_maxHorizontalRange); bw.WriteSingle(m_maxVerticalRange); bw.WriteUInt64(0); s.WriteVector4(bw, m_up); bw.WriteSingle(m_characterHeight); bw.WriteSingle(m_characterDepth); bw.WriteSingle(m_characterWidth); bw.WriteSingle(m_cellWidth); bw.WriteByte((byte)m_resolutionRoundingMode); bw.WriteByte(0); m_chunkSettings.Write(s, bw); bw.WriteUInt64(0); bw.WriteUInt32(0); bw.WriteUInt16(0); bw.WriteSingle(m_border); bw.WriteBoolean(m_useBorderCells); bw.WriteUInt16(0); bw.WriteByte(0); m_mergingSettings.Write(s, bw); bw.WriteSingle(m_minRegionVolume); bw.WriteSingle(m_minDistanceToSeedPoints); bw.WriteUInt32(0); s.WriteVector4Array(bw, m_regionSeedPoints); m_defaultConstructionInfo.Write(s, bw); bw.WriteUInt32(0); s.WriteClassArray <hkaiNavVolumeGenerationSettingsMaterialConstructionInfo>(bw, m_materialMap); s.WriteClassPointerArray <hkaiCarver>(bw, m_carvers); s.WriteClassPointerArray <hkaiMaterialPainter>(bw, m_painters); bw.WriteBoolean(m_saveInputSnapshot); bw.WriteUInt32(0); bw.WriteUInt16(0); bw.WriteByte(0); s.WriteStringPointer(bw, m_snapshotFilename); }
public virtual void Write(PackFileSerializer s, BinaryWriterEx bw) { bw.WriteUInt32(m_transformSetIndex); bw.WriteUInt32(m_transformIndex); bw.WriteBoolean(m_transferTranslationMotion); bw.WriteUInt16(0); bw.WriteByte(0); bw.WriteSingle(m_minTranslationSpeed); bw.WriteSingle(m_maxTranslationSpeed); bw.WriteSingle(m_minTranslationBlend); bw.WriteSingle(m_maxTranslationBlend); bw.WriteBoolean(m_transferRotationMotion); bw.WriteUInt16(0); bw.WriteByte(0); bw.WriteSingle(m_minRotationSpeed); bw.WriteSingle(m_maxRotationSpeed); bw.WriteSingle(m_minRotationBlend); bw.WriteSingle(m_maxRotationBlend); }
public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); m_fromGeneratorSyncInfo.Write(s, bw); m_fromGeneratorPartitionInfo.Write(s, bw); bw.WriteUInt32(0); s.WriteQSTransform(bw, m_worldFromModel); s.WriteQSTransform(bw, m_motion); s.WriteQSTransformArray(bw, m_pose); s.WriteQSTransformArray(bw, m_additivePose); s.WriteSingleArray(bw, m_boneWeights); bw.WriteSingle(m_toGeneratorDuration); bw.WriteBoolean(m_isFromGeneratorActive); bw.WriteBoolean(m_gotPose); bw.WriteBoolean(m_gotAdditivePose); bw.WriteUInt64(0); bw.WriteByte(0); }
public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); bw.WriteUInt64(0); s.WriteVector4(bw, m_axisOfRotation); bw.WriteSingle(m_twistAngle); bw.WriteInt16(m_startBoneIndex); bw.WriteInt16(m_endBoneIndex); bw.WriteSByte((sbyte)m_setAngleMethod); bw.WriteSByte((sbyte)m_rotationAxisCoordinates); bw.WriteBoolean(m_isAdditive); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt32(0); bw.WriteByte(0); }
public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); bw.WriteSByte((sbyte)m_alignMode); bw.WriteSByte((sbyte)m_alignTargetMode); bw.WriteBoolean(m_alignSingleAxis); bw.WriteUInt32(0); bw.WriteByte(0); s.WriteVector4(bw, m_alignAxis); s.WriteVector4(bw, m_alignTargetAxis); s.WriteQuaternion(bw, m_frameOfReference); bw.WriteSingle(m_duration); bw.WriteInt32(m_alignModeIndex); bw.WriteInt32(m_alignTargetModeIndex); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt32(0); }
public void WriteSingleWorks(Single value) { for (int i = 0; i < 2; i++) { bool littleEndian = i != 0; using (MemoryStream ms = new MemoryStream()) { using (BinaryWriterEx writer = new BinaryWriterEx(ms, true, littleEndian)) { writer.WriteSingle(value); Assert.AreEqual(sizeof(Single), ms.Length); ms.Position = 0; CollectionAssert.AreEqual(ms.ToArray(), Binary.GetSingleBytes(value, littleEndian)); } } } }
public virtual void Write(PackFileSerializer s, BinaryWriterEx bw) { bw.WriteSingle(m_weightA); bw.WriteSingle(m_weightB); bw.WriteSingle(m_weightC); bw.WriteSingle(m_weightD); bw.WriteSingle(m_bendStiffness); bw.WriteSingle(m_restCurvature); bw.WriteUInt16(m_particleA); bw.WriteUInt16(m_particleB); bw.WriteUInt16(m_particleC); bw.WriteUInt16(m_particleD); }
public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); bw.WriteUInt64(0); s.WriteVector4(bw, m_small); s.WriteVector4(bw, m_big); s.WriteVector4(bw, m_coneApex); s.WriteVector4(bw, m_coneAxis); s.WriteVector4(bw, m_lVec); s.WriteVector4(bw, m_dVec); s.WriteVector4(bw, m_tanThetaVecNeg); bw.WriteSingle(m_smallRadius); bw.WriteSingle(m_bigRadius); bw.WriteSingle(m_l); bw.WriteSingle(m_d); bw.WriteSingle(m_cosTheta); bw.WriteSingle(m_sinTheta); bw.WriteSingle(m_tanTheta); bw.WriteSingle(m_tanThetaSqr); }
public virtual void Write(PackFileSerializer s, BinaryWriterEx bw) { s.WriteTransform(bw, m_transform); s.WriteVector4(bw, m_sweptTransform_0); s.WriteVector4(bw, m_sweptTransform_1); s.WriteVector4(bw, m_sweptTransform_2); s.WriteVector4(bw, m_sweptTransform_3); s.WriteVector4(bw, m_sweptTransform_4); s.WriteVector4(bw, m_deltaAngle); bw.WriteSingle(m_objectRadius); bw.WriteInt16(m_linearDamping); bw.WriteInt16(m_angularDamping); bw.WriteInt16(m_timeFactor); m_maxLinearVelocity.Write(s, bw); m_maxAngularVelocity.Write(s, bw); bw.WriteByte(m_deactivationClass); bw.WriteUInt16(0); bw.WriteByte(0); }
public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); s.WriteVector4(bw, m_up); s.WriteClassPointer <hkaiStreamingCollection>(bw, m_streamingCollection); s.WriteClassPointer <hkaiNavMeshCutter>(bw, m_cutter); bw.WriteBoolean(m_performValidationChecks); bw.WriteUInt32(0); bw.WriteUInt16(0); bw.WriteByte(0); s.WriteClassPointer <hkaiDynamicNavMeshQueryMediator>(bw, m_dynamicNavMeshMediator); s.WriteClassPointer <hkaiDynamicNavVolumeMediator>(bw, m_dynamicNavVolumeMediator); s.WriteClassPointer <hkaiOverlapManager>(bw, m_overlapManager); m_silhouetteGenerationParameters.Write(s, bw); bw.WriteSingle(m_silhouetteExtrusion); bw.WriteBoolean(m_forceSilhouetteUpdates); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt16(0); bw.WriteByte(0); s.WriteClassPointerArray <hkaiSilhouetteGenerator>(bw, m_silhouetteGenerators); s.WriteClassPointerArray <hkaiObstacleGenerator>(bw, m_obstacleGenerators); s.WriteClassPointer <hkaiAvoidancePairProperties>(bw, m_avoidancePairProps); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt32(0); bw.WriteInt32(m_maxRequestsPerStep); bw.WriteInt32(m_maxEstimatedIterationsPerStep); bw.WriteInt32(m_priorityThreshold); bw.WriteInt32(m_numPathRequestsPerTask); bw.WriteInt32(m_numBehaviorUpdatesPerTask); bw.WriteInt32(m_numCharactersPerAvoidanceTask); bw.WriteInt32(m_maxPathSearchEdgesOut); bw.WriteInt32(m_maxPathSearchPointsOut); bw.WriteBoolean(m_precomputeNavMeshClearance); bw.WriteUInt64(0); bw.WriteUInt16(0); bw.WriteByte(0); m_defaultPathfindingInput.Write(s, bw); m_defaultVolumePathfindingInput.Write(s, bw); }
public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); bw.WriteByte(m_isEnabled); bw.WriteByte(m_forwardAxis); bw.WriteByte(m_sideAxis); bw.WriteUInt16(0); bw.WriteByte(0); bw.WriteSingle(m_maxFrictionForce); bw.WriteSingle(m_torque); bw.WriteSingle(m_radius); bw.WriteSingle(m_frictionImpulse_0); bw.WriteSingle(m_frictionImpulse_1); bw.WriteSingle(m_slipImpulse_0); bw.WriteSingle(m_slipImpulse_1); bw.WriteUInt32(0); s.WriteClassPointer <hkpWheelFrictionConstraintAtomAxle>(bw, m_axle); }
public virtual void Write(PackFileSerializer s, BinaryWriterEx bw) { bw.WriteByte((byte)m_vertexSelectionMethod); bw.WriteUInt16(0); bw.WriteByte(0); bw.WriteSingle(m_vertexFraction); bw.WriteSingle(m_areaFraction); bw.WriteSingle(m_minPartitionArea); bw.WriteInt32(m_numSmoothingIterations); bw.WriteSingle(m_iterationDamping); bw.WriteBoolean(m_addVerticesOnBoundaryEdges); bw.WriteBoolean(m_addVerticesOnPartitionBorders); bw.WriteUInt16(0); bw.WriteSingle(m_boundaryEdgeSplitLength); bw.WriteSingle(m_partitionBordersSplitLength); bw.WriteSingle(m_userVertexOnBoundaryTolerance); s.WriteVector4Array(bw, m_userVertices); }
public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); s.WriteClassArray <hkbFootIkDriverInfoLeg>(bw, m_legs); bw.WriteSingle(m_raycastDistanceUp); bw.WriteSingle(m_raycastDistanceDown); bw.WriteSingle(m_originalGroundHeightMS); bw.WriteSingle(m_verticalOffset); bw.WriteUInt32(m_collisionFilterInfo); bw.WriteSingle(m_forwardAlignFraction); bw.WriteSingle(m_sidewaysAlignFraction); bw.WriteSingle(m_sidewaysSampleWidth); bw.WriteBoolean(m_lockFeetWhenPlanted); bw.WriteBoolean(m_useCharacterUpVector); bw.WriteBoolean(m_isQuadrupedNarrow); bw.WriteBoolean(m_keepSourceFootEndAboveGround); bw.WriteUInt32(0); }
public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); s.WriteClassArray <hkaiNavMeshFace>(bw, m_faces); s.WriteClassArray <hkaiNavMeshEdge>(bw, m_edges); s.WriteVector4Array(bw, m_vertices); s.WriteClassArray <hkaiStreamingSet>(bw, m_streamingSets); s.WriteInt32Array(bw, m_faceData); s.WriteInt32Array(bw, m_edgeData); bw.WriteInt32(m_faceDataStriding); bw.WriteInt32(m_edgeDataStriding); bw.WriteByte(m_flags); bw.WriteUInt32(0); bw.WriteUInt16(0); bw.WriteByte(0); m_aabb.Write(s, bw); bw.WriteSingle(m_erosionRadius); bw.WriteUInt32(0); bw.WriteUInt64(m_userData); }
public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); s.WriteStringPointer(bw, m_modeller); s.WriteStringPointer(bw, m_asset); bw.WriteSingle(m_sceneLength); bw.WriteUInt32(m_numFrames); s.WriteClassPointer <hkxNode>(bw, m_rootNode); s.WriteClassPointerArray <hkxNodeSelectionSet>(bw, m_selectionSets); s.WriteClassPointerArray <hkxCamera>(bw, m_cameras); s.WriteClassPointerArray <hkxLight>(bw, m_lights); bw.WriteUInt64(0); bw.WriteUInt64(0); s.WriteClassPointerArray <hkxMaterial>(bw, m_materials); s.WriteClassPointerArray <hkxTextureInplace>(bw, m_inplaceTextures); s.WriteClassPointerArray <hkxTextureFile>(bw, m_externalTextures); s.WriteClassPointerArray <hkxSkinBinding>(bw, m_skinBindings); s.WriteClassPointerArray <hkxSpline>(bw, m_splines); s.WriteMatrix3(bw, m_appliedTransform); }
public virtual void Write(PackFileSerializer s, BinaryWriterEx bw) { s.WriteVector4(bw, m_currentPosition); s.WriteVector4(bw, m_currentForward); s.WriteVector4(bw, m_currentUp); s.WriteVector4(bw, m_currentVelocity); s.WriteVector4(bw, m_desiredVelocity); s.WriteVector4(bw, m_localGoalPlane); bw.WriteSingle(m_distToLocalGoal); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt32(0); bw.WriteBoolean(m_applyKinematicConstraints); bw.WriteBoolean(m_applyAvoidanceSteering); bw.WriteBoolean(m_enableLocalSteering); bw.WriteUInt64(0); bw.WriteUInt32(0); bw.WriteByte(0); }
public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); s.WriteClassPointer <hkbpTarget>(bw, m_targetIn); s.WriteVector4(bw, m_offsetInBoneSpace); s.WriteVector4(bw, m_alignAxisBS); s.WriteVector4(bw, m_targetAlignAxisTS); s.WriteVector4(bw, m_alignWithCharacterForwardBS); s.WriteVector4(bw, m_currentBonePositionOut); s.WriteQuaternion(bw, m_currentBoneRotationOut); m_eventToSendWhenTargetReached.Write(s, bw); s.WriteClassPointer <hkbGenerator>(bw, m_childGenerator); bw.WriteSingle(m_duration); bw.WriteInt16(m_ragdollBoneIndex); bw.WriteInt16(m_animationBoneIndex); bw.WriteSByte((sbyte)m_targetMode); bw.WriteSByte(m_alignMode); bw.WriteBoolean(m_useVelocityPrediction); bw.WriteBoolean(m_affectOrientation); bw.WriteBoolean(m_currentBoneIsValidOut); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt64(0); bw.WriteUInt16(0); bw.WriteByte(0); s.WriteVector4(bw, m_finalAnimBonePositionMS); s.WriteVector4(bw, m_initialAnimBonePositionMS); s.WriteQuaternion(bw, m_finalAnimBoneOrientationMS); s.WriteQuaternion(bw, m_animationFromRagdoll); s.WriteQSTransform(bw, m_totalMotion); s.WriteQSTransform(bw, m_accumulatedMotion); bw.WriteBoolean(m_useAnimationData); bw.WriteUInt64(0); bw.WriteUInt32(0); bw.WriteUInt16(0); bw.WriteByte(0); }
public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); bw.WriteSingle(m_kP); bw.WriteSingle(m_kI); bw.WriteSingle(m_kD); bw.WriteBoolean(m_enableScalarDamping); bw.WriteBoolean(m_enableVectorDamping); bw.WriteUInt16(0); bw.WriteSingle(m_rawValue); bw.WriteSingle(m_dampedValue); s.WriteVector4(bw, m_rawVector); s.WriteVector4(bw, m_dampedVector); s.WriteVector4(bw, m_vecErrorSum); s.WriteVector4(bw, m_vecPreviousError); bw.WriteSingle(m_errorSum); bw.WriteSingle(m_previousError); bw.WriteUInt64(0); }
public virtual void Write(PackFileSerializer s, BinaryWriterEx bw) { s.WriteClassPointer <hknpShape>(bw, m_shape); bw.WriteUInt32(m_reservedBodyId); bw.WriteUInt32(m_motionId); bw.WriteByte(m_qualityId); bw.WriteByte(0); bw.WriteUInt16(m_materialId); bw.WriteUInt32(m_collisionFilterInfo); bw.WriteInt32(m_flags); bw.WriteSingle(m_collisionLookAheadDistance); s.WriteStringPointer(bw, m_name); bw.WriteUInt64(m_userData); s.WriteVector4(bw, m_position); s.WriteQuaternion(bw, m_orientation); bw.WriteByte(m_spuFlags); bw.WriteUInt32(0); bw.WriteUInt16(0); bw.WriteByte(0); s.WriteClassPointer <hkLocalFrame>(bw, m_localFrame); }
public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); m_embeddedTrianglesSubpart.Write(s, bw); s.WriteVector4(bw, m_aabbHalfExtents); s.WriteVector4(bw, m_aabbCenter); bw.WriteUInt64(0); bw.WriteInt32(m_numBitsForSubpartIndex); bw.WriteUInt32(0); s.WriteClassArray <hkpExtendedMeshShapeTrianglesSubpart>(bw, m_trianglesSubparts); s.WriteClassArray <hkpExtendedMeshShapeShapesSubpart>(bw, m_shapesSubparts); s.WriteUInt16Array(bw, m_weldingInfo); bw.WriteByte((byte)m_weldingType); bw.WriteUInt16(0); bw.WriteByte(0); bw.WriteUInt32(m_defaultCollisionFilterInfo); bw.WriteInt32(m_cachedNumChildShapes); bw.WriteSingle(m_triangleRadius); bw.WriteUInt64(0); bw.WriteUInt64(0); }
public virtual void Write(PackFileSerializer s, BinaryWriterEx bw) { bw.WriteSingle(m_spinVelocity); bw.WriteSingle(m_sumVelocity); bw.WriteInt32(m_numWheels); bw.WriteInt32(m_wheelsSolved); bw.WriteInt32(m_stepsSolved); bw.WriteSingle(m_invInertia); bw.WriteSingle(m_inertia); bw.WriteSingle(m_impulseScaling); bw.WriteSingle(m_impulseMax); bw.WriteBoolean(m_isFixed); bw.WriteUInt16(0); bw.WriteByte(0); bw.WriteInt32(m_numWheelsOnGround); }
public override void Write(PackFileSerializer s, BinaryWriterEx bw) { base.Write(s, bw); m_characterControllerSetup.Write(s, bw); bw.WriteUInt64(0); s.WriteVector4(bw, m_modelUpMS); s.WriteVector4(bw, m_modelForwardMS); s.WriteVector4(bw, m_modelRightMS); s.WriteClassArray <hkbVariableInfo>(bw, m_characterPropertyInfos); s.WriteInt32Array(bw, m_numBonesPerLod); s.WriteClassPointer <hkbVariableValueSet>(bw, m_characterPropertyValues); s.WriteClassPointer <hkbFootIkDriverInfo>(bw, m_footIkDriverInfo); s.WriteClassPointer <hkbHandIkDriverInfo>(bw, m_handIkDriverInfo); s.WriteClassPointer <hkReferencedObject>(bw, m_aiControlDriverInfo); s.WriteClassPointer <hkbCharacterStringData>(bw, m_stringData); s.WriteClassPointer <hkbMirroredSkeletonInfo>(bw, m_mirroredSkeletonInfo); s.WriteInt16Array(bw, m_boneAttachmentBoneIndices); s.WriteMatrix4Array(bw, m_boneAttachmentTransforms); bw.WriteSingle(m_scale); bw.WriteUInt64(0); bw.WriteUInt32(0); }
internal void WriteAssertValue(BinaryWriterEx bw) { switch (Type) { case ParamType.aob: var assertAob = (byte[])ValueToAssert; bw.WriteBytes(assertAob); break; case ParamType.b: bw.WriteBoolean((bool)ValueToAssert); break; case ParamType.u8: case ParamType.x8: bw.WriteByte((byte)ValueToAssert); break; case ParamType.s8: bw.WriteSByte((sbyte)ValueToAssert); break; case ParamType.u16: case ParamType.x16: bw.WriteUInt16((ushort)ValueToAssert); break; case ParamType.s16: bw.WriteInt16((short)ValueToAssert); break; case ParamType.u32: case ParamType.x32: bw.WriteUInt32((uint)ValueToAssert); break; case ParamType.s32: bw.WriteInt32((int)ValueToAssert); break; case ParamType.u64: case ParamType.x64: bw.WriteUInt64((ulong)ValueToAssert); break; case ParamType.s64: bw.WriteInt64((long)ValueToAssert); break; case ParamType.f32: bw.WriteSingle((float)ValueToAssert); break; case ParamType.f64: bw.WriteDouble((double)ValueToAssert); break; default: throw new Exception($"Invalid ParamTemplate ParamType: {Type.ToString()}"); } }