Example #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="AnimationCurve">The AnimationCurve node not the AnimationCurveNode node</param>
        public FBXAnimationCurve(FBXRecordNode AnimationCurve)
        {
            if (AnimationCurve.Name != "AnimationCurve")
            {
                throw new Exception("Incorrect Node Type");
            }

            //Default node
            DefaultValue = AnimationCurve.NestedRecords[0].PropertyList[0].singleProperty;

            int keyFrameAmount = AnimationCurve.NestedRecords[2].PropertyList[0].int64ArrayProperty.Length;

            KeyFrames = new FBXKeyFrame[keyFrameAmount];
            for (int i = 0; i < keyFrameAmount; i++)
            {
                KeyFrames[i] = new FBXKeyFrame(AnimationCurve.NestedRecords[3].PropertyList[0].singleArrayProperty[i]
                                               , AnimationCurve.NestedRecords[2].PropertyList[0].int64ArrayProperty[i]);
            }
        }
Example #2
0
 public FBXAnimationNode(FBXRecordNode AnimationNode)
 {
     Node            = AnimationNode;
     AnimationCurves = new List <FBXRecordNode>();
 }
Example #3
0
 public FBXAnimationGroup(FBXRecordNode AnimationStack, FBXRecordNode AnimationLayer)
 {
     this.AnimationStack = AnimationStack;
     this.AnimationLayer = AnimationLayer;
     AnimationNodes      = new List <FBXAnimationNode>();
 }