public override Animation ToAnimation(EditDataSet editSet, DataSet.AnimationBits bits) { var ret = new AnimationKeyframed(); ret.duration = (ushort)(duration * 1000); // stored in milliseconds ret.speedMultiplier256 = (ushort)(this.speedMultiplier * 256.0f); ret.tracksOffset = (ushort)editSet.getPatternRGBTrackOffset(pattern); //// Copy the pattern so we can adjust the hue of the keyframes //var patternCopy = pattern.Duplicate(); //foreach (var t in patternCopy.gradients) //{ // foreach (var k in t.keyframes) // { // float h, s, v; // Color.RGBToHSV(k.color, out h, out s, out v); // h = Mathf.Repeat(h + hueAdjust, 1.0f); // k.color = Color.HSVToRGB(h, s, v); // } //} //var tracks = patternCopy.ToRGBTracks(editSet, bits); ret.trackCount = (ushort)pattern.gradients.Count; ret.flowOrder = flowOrder ? (byte)1 : (byte)0; return(ret); }
public uint specialColorPayload; // meaning varies public AnimationInstanceKeyframed(AnimationKeyframed preset, DataSet.AnimationBits bits) : base(preset, bits) { }