//! public void AddFrame(FGAnimationKeyFrame frame) { FGAnimHelper.AddFrame(ref frames); frames[frames.Length - 1] = frame; for (int i = 0; i < frame.frameCount; i++) { _frameToKeyFrame.Add(frames.Length - 1); } totalFrameCount += frame.frameCount; }
//! public void RemoveFrame(int indx) { if (indx < frames.Length) { totalFrameCount -= frames[indx].frameCount; int startIndex = 0; for (int i = 0; i < _frameToKeyFrame.Count; i++) { if (_frameToKeyFrame[i] == indx) { startIndex = i; break; } } _frameToKeyFrame.RemoveRange(startIndex, frames[indx].frameCount); FGAnimHelper.RemoveFrame(ref frames, indx); } }