예제 #1
0
 public virtual void Read(PackFileDeserializer des, BinaryReaderEx br)
 {
     m_name        = des.ReadStringPointer(br);
     m_isExclusive = br.ReadUInt32();
     m_flags       = br.ReadInt32();
     m_triggerType = (TriggerType)br.ReadByte();
     m_triggerManifoldTolerance = new hkUFloat8();
     m_triggerManifoldTolerance.Read(des, br);
     m_dynamicFriction                 = br.ReadInt16();
     m_staticFriction                  = br.ReadInt16();
     m_restitution                     = br.ReadInt16();
     m_frictionCombinePolicy           = (CombinePolicy)br.ReadByte();
     m_restitutionCombinePolicy        = (CombinePolicy)br.ReadByte();
     m_weldingTolerance                = br.ReadInt16();
     m_maxContactImpulse               = br.ReadSingle();
     m_fractionOfClippedImpulseToApply = br.ReadSingle();
     m_massChangerCategory             = (MassChangerCategory)br.ReadByte();
     br.ReadByte();
     m_massChangerHeavyObjectFactor  = br.ReadInt16();
     m_softContactForceFactor        = br.ReadInt16();
     m_softContactDampFactor         = br.ReadInt16();
     m_softContactSeperationVelocity = new hkUFloat8();
     m_softContactSeperationVelocity.Read(des, br);
     br.ReadUInt16();
     br.ReadByte();
     m_surfaceVelocity = des.ReadClassPointer <hknpSurfaceVelocity>(br);
     m_disablingCollisionsBetweenCvxCvxDynamicObjectsDistance = br.ReadInt16();
     br.ReadUInt32();
     br.ReadUInt16();
     m_userData = br.ReadUInt64();
     m_isShared = br.ReadBoolean();
     br.ReadUInt32();
     br.ReadUInt16();
     br.ReadByte();
 }
예제 #2
0
 public virtual void Read(PackFileDeserializer des, BinaryReaderEx br)
 {
     m_userData = br.ReadUInt64();
     m_friction = new hkUFloat8();
     m_friction.Read(des, br);
     m_restitution = br.ReadByte();
     m_maxImpulse  = new hkUFloat8();
     m_maxImpulse.Read(des, br);
     m_flags = br.ReadByte();
     br.ReadUInt32();
 }
예제 #3
0
 public override void Read(PackFileDeserializer des, BinaryReaderEx br)
 {
     base.Read(des, br);
     m_solvingMethod  = (SolvingMethod)br.ReadByte();
     m_bodiesToNotify = br.ReadByte();
     m_velocityStabilizationFactor = new hkUFloat8();
     m_velocityStabilizationFactor.Read(des, br);
     m_enableLinearImpulseLimit = br.ReadBoolean();
     br.ReadUInt16();
     m_breachImpulse = br.ReadSingle();
     m_inertiaStabilizationFactor = br.ReadSingle();
 }
예제 #4
0
 public virtual void Read(PackFileDeserializer des, BinaryReaderEx br)
 {
     m_transform         = des.ReadTransform(br);
     m_sweptTransform_0  = des.ReadVector4(br);
     m_sweptTransform_1  = des.ReadVector4(br);
     m_sweptTransform_2  = des.ReadVector4(br);
     m_sweptTransform_3  = des.ReadVector4(br);
     m_sweptTransform_4  = des.ReadVector4(br);
     m_deltaAngle        = des.ReadVector4(br);
     m_objectRadius      = br.ReadSingle();
     m_linearDamping     = br.ReadInt16();
     m_angularDamping    = br.ReadInt16();
     m_timeFactor        = br.ReadInt16();
     m_maxLinearVelocity = new hkUFloat8();
     m_maxLinearVelocity.Read(des, br);
     m_maxAngularVelocity = new hkUFloat8();
     m_maxAngularVelocity.Read(des, br);
     m_deactivationClass = br.ReadByte();
     br.ReadUInt16();
     br.ReadByte();
 }