public override void Read(AssetReader reader)
        {
            base.Read(reader);
            ConnectedBody.Read(reader);
            Anchor = reader.ReadAsset <Vector3f>();
            AutoConfigureConnectedAnchor = reader.ReadBoolean();
            reader.AlignStream(AlignType.Align4);
            ConnectedAnchor = reader.ReadAsset <Vector3f>();

            Spring      = reader.ReadSingle();
            Damper      = reader.ReadSingle();
            MinDistance = reader.ReadSingle();
            MaxDistance = reader.ReadSingle();
            Tolerance   = reader.ReadSingle();

            BreakForce          = reader.ReadSingle();
            BreakTorque         = reader.ReadSingle();
            EnableCollision     = reader.ReadBoolean();
            EnablePreprocessing = reader.ReadBoolean();
            if (IsReadMassScale(reader.Version))
            {
                reader.AlignStream(AlignType.Align4);
                MassScale          = reader.ReadSingle();
                ConnectedMassScale = reader.ReadSingle();
            }
        }
 public override void Read(AssetReader reader)
 {
     base.Read(reader);
     ConnectedBody.Read(reader);
     Anchor = reader.ReadAsset <Vector3f>();
     Axis   = reader.ReadAsset <Vector3f>();
     AutoConfigureConnectedAnchor = reader.ReadBoolean();
     reader.AlignStream(AlignType.Align4);
     ConnectedAnchor  = reader.ReadAsset <Vector3f>();
     SwingAxis        = reader.ReadAsset <Vector3f>();
     TwistLimitSpring = reader.ReadAsset <SoftJointLimitSpring>();
     LowTwistLimit    = reader.ReadAsset <SoftJointLimit>();
     HighTwistLimit   = reader.ReadAsset <SoftJointLimit>();
     SwingLimitSpring = reader.ReadAsset <SoftJointLimitSpring>();
     Swing1Limit      = reader.ReadAsset <SoftJointLimit>();
     Swing2Limit      = reader.ReadAsset <SoftJointLimit>();
     EnableProjection = reader.ReadBoolean();
     reader.AlignStream(AlignType.Align4);
     ProjectionDistance  = reader.ReadSingle();
     ProjectionAngle     = reader.ReadSingle();
     BreakForce          = reader.ReadSingle();
     BreakTorque         = reader.ReadSingle();
     EnableCollision     = reader.ReadBoolean();
     EnablePreprocessing = reader.ReadBoolean();
     if (IsReadMassScale(reader.Version))
     {
         reader.AlignStream(AlignType.Align4);
         MassScale          = reader.ReadSingle();
         ConnectedMassScale = reader.ReadSingle();
     }
 }
Beispiel #3
0
        public override void Read(AssetReader reader)
        {
            base.Read(reader);
            ConnectedBody.Read(reader);
            Anchor = reader.ReadAsset <Vector3f>();
            Axis   = reader.ReadAsset <Vector3f>();
            AutoConfigureConnectedAnchor = reader.ReadBoolean();
            reader.AlignStream(AlignType.Align4);
            ConnectedAnchor = reader.ReadAsset <Vector3f>();

            UseSpring = reader.ReadBoolean();
            reader.AlignStream(AlignType.Align4);
            Spring   = reader.ReadAsset <JointSpring>();
            UseMotor = reader.ReadBoolean();
            reader.AlignStream(AlignType.Align4);
            Motor     = reader.ReadAsset <JointMotor>();
            UseLimits = reader.ReadBoolean();
            reader.AlignStream(AlignType.Align4);
            Limits = reader.ReadAsset <JointLimits>();

            BreakForce      = reader.ReadSingle();
            BreakTorque     = reader.ReadSingle();
            EnableCollision = reader.ReadBoolean();
            if (IsReadMassScale(reader.Version))
            {
                reader.AlignStream(AlignType.Align4);
                MassScale          = reader.ReadSingle();
                ConnectedMassScale = reader.ReadSingle();
            }
        }
        public override void Read(AssetReader reader)
        {
            base.Read(reader);
            ConnectedBody.Read(reader);
            Anchor = reader.ReadAsset <Vector3f>();
            Axis   = reader.ReadAsset <Vector3f>();
            AutoConfigureConnectedAnchor = reader.ReadBoolean();
            reader.AlignStream(AlignType.Align4);
            ConnectedAnchor = reader.ReadAsset <Vector3f>();

            SecondaryAxis        = reader.ReadAsset <Vector3f>();
            XMotion              = (ConfigurableJointMotion)reader.ReadInt32();
            YMotion              = (ConfigurableJointMotion)reader.ReadInt32();
            ZMotion              = (ConfigurableJointMotion)reader.ReadInt32();
            AngularXMotion       = (ConfigurableJointMotion)reader.ReadInt32();
            AngularYMotion       = (ConfigurableJointMotion)reader.ReadInt32();
            AngularZMotion       = (ConfigurableJointMotion)reader.ReadInt32();
            LinearLimitSpring    = reader.ReadAsset <SoftJointLimitSpring>();
            LinearLimit          = reader.ReadAsset <SoftJointLimit>();
            AngularXLimitSpring  = reader.ReadAsset <SoftJointLimitSpring>();
            LowAngularXLimit     = reader.ReadAsset <SoftJointLimit>();
            HighAngularXLimit    = reader.ReadAsset <SoftJointLimit>();
            AngularYZLimitSpring = reader.ReadAsset <SoftJointLimitSpring>();
            AngularYLimit        = reader.ReadAsset <SoftJointLimit>();
            AngularZLimit        = reader.ReadAsset <SoftJointLimit>();
            TargetPosition       = reader.ReadAsset <Vector3f>();
            TargetVelocity       = reader.ReadAsset <Vector3f>();
            XDrive                 = reader.ReadAsset <JointDrive>();
            YDrive                 = reader.ReadAsset <JointDrive>();
            ZDrive                 = reader.ReadAsset <JointDrive>();
            TargetRotation         = reader.ReadAsset <Quaternionf>();
            TargetAngularVelocity  = reader.ReadAsset <Vector3f>();
            RotationDriveMode      = (RotationDriveMode)reader.ReadInt32();
            AngularXDrive          = reader.ReadAsset <JointDrive>();
            AngularYZDrive         = reader.ReadAsset <JointDrive>();
            SlerpDrive             = reader.ReadAsset <JointDrive>();
            ProjectionMode         = (JointProjectionMode)reader.ReadInt32();
            ProjectionDistance     = reader.ReadSingle();
            ProjectionAngle        = reader.ReadSingle();
            ConfiguredInWorldSpace = reader.ReadBoolean();
            SwapBodies             = reader.ReadBoolean();
            reader.AlignStream(AlignType.Align4);
            BreakForce          = reader.ReadSingle();
            BreakTorque         = reader.ReadSingle();
            EnableCollision     = reader.ReadBoolean();
            EnablePreprocessing = reader.ReadBoolean();
            if (IsReadMassScale(reader.Version))
            {
                reader.AlignStream(AlignType.Align4);
                MassScale          = reader.ReadSingle();
                ConnectedMassScale = reader.ReadSingle();
            }
        }
        public override void Read(AssetReader reader)
        {
            base.Read(reader);
            ConnectedBody.Read(reader);

            BreakForce          = reader.ReadSingle();
            BreakTorque         = reader.ReadSingle();
            EnableCollision     = reader.ReadBoolean();
            EnablePreprocessing = reader.ReadBoolean();
            if (IsReadMassScale(reader.Version))
            {
                reader.AlignStream(AlignType.Align4);
                MassScale          = reader.ReadSingle();
                ConnectedMassScale = reader.ReadSingle();
            }
        }