public AvatarConstant(ObjectReader reader) { var version = reader.version; m_AvatarSkeleton = new Skeleton(reader); m_AvatarSkeletonPose = new SkeletonPose(reader); if (version[0] > 4 || (version[0] == 4 && version[1] >= 3)) //4.3 and up { m_DefaultPose = new SkeletonPose(reader); m_SkeletonNameIDArray = reader.ReadUInt32Array(); } m_Human = new Human(reader); m_HumanSkeletonIndexArray = reader.ReadInt32Array(); if (version[0] > 4 || (version[0] == 4 && version[1] >= 3)) //4.3 and up { m_HumanSkeletonReverseIndexArray = reader.ReadInt32Array(); } m_RootMotionBoneIndex = reader.ReadInt32(); m_RootMotionBoneX = new xform(reader); if (version[0] > 4 || (version[0] == 4 && version[1] >= 3)) //4.3 and up { m_RootMotionSkeleton = new Skeleton(reader); m_RootMotionSkeletonPose = new SkeletonPose(reader); m_RootMotionSkeletonIndexArray = reader.ReadInt32Array(); } }
public ClipMuscleConstant(ObjectReader reader) { var version = reader.version; m_DeltaPose = new HumanPose(reader); m_StartX = new xform(reader); if (version[0] > 5 || (version[0] == 5 && version[1] >= 5))//5.5 and up { m_StopX = new xform(reader); } m_LeftFootStartX = new xform(reader); m_RightFootStartX = new xform(reader); if (version[0] < 5)//5.0 down { m_MotionStartX = new xform(reader); m_MotionStopX = new xform(reader); } m_AverageSpeed = version[0] > 5 || (version[0] == 5 && version[1] >= 4) ? reader.ReadVector3() : (Vector3)reader.ReadVector4();//5.4 and up m_Clip = new Clip(reader); m_StartTime = reader.ReadSingle(); m_StopTime = reader.ReadSingle(); m_OrientationOffsetY = reader.ReadSingle(); m_Level = reader.ReadSingle(); m_CycleOffset = reader.ReadSingle(); m_AverageAngularSpeed = reader.ReadSingle(); m_IndexArray = reader.ReadInt32Array(); if (version[0] < 4 || (version[0] == 4 && version[1] < 3)) //4.3 down { var m_AdditionalCurveIndexArray = reader.ReadInt32Array(); } int numDeltas = reader.ReadInt32(); m_ValueArrayDelta = new List <ValueDelta>(numDeltas); for (int i = 0; i < numDeltas; i++) { m_ValueArrayDelta.Add(new ValueDelta(reader)); } if (version[0] > 5 || (version[0] == 5 && version[1] >= 3))//5.3 and up { m_ValueArrayReferencePose = reader.ReadSingleArray(); } m_Mirror = reader.ReadBoolean(); m_LoopTime = reader.ReadBoolean(); m_LoopBlend = reader.ReadBoolean(); m_LoopBlendOrientation = reader.ReadBoolean(); m_LoopBlendPositionY = reader.ReadBoolean(); m_LoopBlendPositionXZ = reader.ReadBoolean(); if (version[0] > 5 || (version[0] == 5 && version[1] >= 5))//5.5 and up { m_StartAtOrigin = reader.ReadBoolean(); } m_KeepOriginalOrientation = reader.ReadBoolean(); m_KeepOriginalPositionY = reader.ReadBoolean(); m_KeepOriginalPositionXZ = reader.ReadBoolean(); m_HeightFromFeet = reader.ReadBoolean(); reader.AlignStream(); }
public ValueArray(ObjectReader reader) { var version = reader.version; if (version[0] < 5 || (version[0] == 5 && version[1] < 5)) //5.5 down { int numBools = reader.ReadInt32(); m_BoolValues = new bool[numBools]; for (int i = 0; i < numBools; i++) { m_BoolValues[i] = reader.ReadBoolean(); } reader.AlignStream(4); m_IntValues = reader.ReadInt32Array(reader.ReadInt32()); m_FloatValues = reader.ReadSingleArray(reader.ReadInt32()); } int numPosValues = reader.ReadInt32(); m_PositionValues = new object[numPosValues]; for (int i = 0; i < numPosValues; i++) { m_PositionValues[i] = version[0] > 5 || (version[0] == 5 && version[1] >= 4) ? (object)reader.ReadVector3() : (object)reader.ReadVector4(); //5.4 and up } m_QuaternionValues = reader.ReadVector4Array(reader.ReadInt32()); int numScaleValues = reader.ReadInt32(); m_ScaleValues = new object[numScaleValues]; for (int i = 0; i < numScaleValues; i++) { m_ScaleValues[i] = version[0] > 5 || (version[0] == 5 && version[1] >= 4) ? (object)reader.ReadVector3() : (object)reader.ReadVector4(); //5.4 adn up } if (version[0] > 5 || (version[0] == 5 && version[1] >= 5)) //5.5 and up { m_FloatValues = reader.ReadSingleArray(reader.ReadInt32()); m_IntValues = reader.ReadInt32Array(reader.ReadInt32()); int numBools = reader.ReadInt32(); m_BoolValues = new bool[numBools]; for (int i = 0; i < numBools; i++) { m_BoolValues[i] = reader.ReadBoolean(); } reader.AlignStream(4); } }
public Human(ObjectReader reader) { var version = reader.version; m_RootX = new xform(reader); m_Skeleton = new Skeleton(reader); m_SkeletonPose = new SkeletonPose(reader); m_LeftHand = new Hand(reader); m_RightHand = new Hand(reader); if (version[0] < 2018 || (version[0] == 2018 && version[1] < 2)) //2018.2 down { var numHandles = reader.ReadInt32(); m_Handles = new Handle[numHandles]; for (var i = 0; i < numHandles; i++) { m_Handles[i] = new Handle(reader); } var numColliders = reader.ReadInt32(); m_ColliderArray = new Collider[numColliders]; for (var i = 0; i < numColliders; i++) { m_ColliderArray[i] = new Collider(reader); } } m_HumanBoneIndex = reader.ReadInt32Array(); m_HumanBoneMass = reader.ReadSingleArray(); if (version[0] < 2018 || (version[0] == 2018 && version[1] < 2)) //2018.2 down { m_ColliderIndex = reader.ReadInt32Array(); } m_Scale = reader.ReadSingle(); m_ArmTwist = reader.ReadSingle(); m_ForeArmTwist = reader.ReadSingle(); m_UpperLegTwist = reader.ReadSingle(); m_LegTwist = reader.ReadSingle(); m_ArmStretch = reader.ReadSingle(); m_LegStretch = reader.ReadSingle(); m_FeetSpacing = reader.ReadSingle(); m_HasLeftHand = reader.ReadBoolean(); m_HasRightHand = reader.ReadBoolean(); if (version[0] > 5 || (version[0] == 5 && version[1] >= 2)) //5.2 and up { m_HasTDoF = reader.ReadBoolean(); } reader.AlignStream(); }
public Human(ObjectReader reader) { var version = reader.version; m_RootX = new xform(reader); m_Skeleton = new Skeleton(reader); m_SkeletonPose = new SkeletonPose(reader); m_LeftHand = new Hand(reader); m_RightHand = new Hand(reader); if (version[0] < 2018 || (version[0] == 2018 && version[1] < 2)) //2018.2 down { int numHandles = reader.ReadInt32(); m_Handles = new List <Handle>(numHandles); for (int i = 0; i < numHandles; i++) { m_Handles.Add(new Handle(reader)); } int numColliders = reader.ReadInt32(); m_ColliderArray = new List <Collider>(numColliders); for (int i = 0; i < numColliders; i++) { m_ColliderArray.Add(new Collider(reader)); } } m_HumanBoneIndex = reader.ReadInt32Array(); m_HumanBoneMass = reader.ReadSingleArray(); if (version[0] < 2018 || (version[0] == 2018 && version[1] < 2)) //2018.2 down { m_ColliderIndex = reader.ReadInt32Array(); } m_Scale = reader.ReadSingle(); m_ArmTwist = reader.ReadSingle(); m_ForeArmTwist = reader.ReadSingle(); m_UpperLegTwist = reader.ReadSingle(); m_LegTwist = reader.ReadSingle(); m_ArmStretch = reader.ReadSingle(); m_LegStretch = reader.ReadSingle(); m_FeetSpacing = reader.ReadSingle(); m_HasLeftHand = reader.ReadBoolean(); m_HasRightHand = reader.ReadBoolean(); m_HasTDoF = reader.ReadBoolean(); reader.AlignStream(); }
public ValueArray(ObjectReader reader) { var version = reader.version; if (version[0] < 5 || (version[0] == 5 && version[1] < 5)) //5.5 down { m_BoolValues = reader.ReadBooleanArray(); reader.AlignStream(); m_IntValues = reader.ReadInt32Array(); m_FloatValues = reader.ReadSingleArray(); } if (version[0] < 4 || (version[0] == 4 && version[1] < 3)) //4.3 down { m_VectorValues = reader.ReadVector4Array(); } else { int numPosValues = reader.ReadInt32(); m_PositionValues = new Vector3[numPosValues]; for (int i = 0; i < numPosValues; i++) { m_PositionValues[i] = version[0] > 5 || (version[0] == 5 && version[1] >= 4) ? reader.ReadVector3() : (Vector3)reader.ReadVector4(); //5.4 and up } m_QuaternionValues = reader.ReadVector4Array(); int numScaleValues = reader.ReadInt32(); m_ScaleValues = new Vector3[numScaleValues]; for (int i = 0; i < numScaleValues; i++) { m_ScaleValues[i] = version[0] > 5 || (version[0] == 5 && version[1] >= 4) ? reader.ReadVector3() : (Vector3)reader.ReadVector4(); //5.4 and up } if (version[0] > 5 || (version[0] == 5 && version[1] >= 5)) //5.5 and up { m_FloatValues = reader.ReadSingleArray(); m_IntValues = reader.ReadInt32Array(); m_BoolValues = reader.ReadBooleanArray(); reader.AlignStream(); } } }
public StateConstant(ObjectReader reader) { var version = reader.version; int numTransistions = reader.ReadInt32(); m_TransitionConstantArray = new TransitionConstant[numTransistions]; for (int i = 0; i < numTransistions; i++) { m_TransitionConstantArray[i] = new TransitionConstant(reader); } m_BlendTreeConstantIndexArray = reader.ReadInt32Array(); if (version[0] < 5 || (version[0] == 5 && version[1] < 2)) //5.2 down { int numInfos = reader.ReadInt32(); m_LeafInfoArray = new LeafInfoConstant[numInfos]; for (int i = 0; i < numInfos; i++) { m_LeafInfoArray[i] = new LeafInfoConstant(reader); } } int numBlends = reader.ReadInt32(); m_BlendTreeConstantArray = new BlendTreeConstant[numBlends]; for (int i = 0; i < numBlends; i++) { m_BlendTreeConstantArray[i] = new BlendTreeConstant(reader); } m_NameID = reader.ReadUInt32(); if (version[0] > 4 || (version[0] == 4 && version[1] >= 3)) //4.3 and up { m_PathID = reader.ReadUInt32(); } if (version[0] >= 5) //5.0 and up { m_FullPathID = reader.ReadUInt32(); } m_TagID = reader.ReadUInt32(); if (version[0] > 5 || (version[0] == 5 && version[1] >= 1)) //5.1 and up { m_SpeedParamID = reader.ReadUInt32(); m_MirrorParamID = reader.ReadUInt32(); m_CycleOffsetParamID = reader.ReadUInt32(); } if (version[0] > 2017 || (version[0] == 2017 && version[1] >= 2)) //2017.2 and up { var m_TimeParamID = reader.ReadUInt32(); } m_Speed = reader.ReadSingle(); if (version[0] > 4 || (version[0] == 4 && version[1] >= 1)) //4.1 and up { m_CycleOffset = reader.ReadSingle(); } m_IKOnFeet = reader.ReadBoolean(); if (version[0] >= 5) //5.0 and up { m_WriteDefaultValues = reader.ReadBoolean(); } m_Loop = reader.ReadBoolean(); if (version[0] > 4 || (version[0] == 4 && version[1] >= 1)) //4.1 and up { m_Mirror = reader.ReadBoolean(); } reader.AlignStream(); }
public BoneWeights4(ObjectReader reader) { weight = reader.ReadSingleArray(4); boneIndex = reader.ReadInt32Array(4); }
public Hand(ObjectReader reader) { m_HandBoneIndex = reader.ReadInt32Array(); }