bool IsInterpolatorIsEmpty(NovaVector3Interpolator interpolator) { for (int index = 0; index < interpolator.Datas.Length - 1; index++) { if (interpolator.Datas[index].Value != interpolator.Datas[index + 1].Value) { return(false); } } return(true); }
bool DumpInterpolator(string name, string property, NovaVector3Interpolator interpolator, NovaScene scene, List <BabylonAnimation> animations) { if (interpolator.Ready && !IsInterpolatorIsEmpty(interpolator)) { var fps = scene.AnimationFramerate < 1 ? 30 : scene.AnimationFramerate; var babylonAnimation = new BabylonAnimation { name = name, property = property, dataType = BabylonAnimation.DataType.Vector3, framePerSecond = fps }; babylonAnimation.keys = interpolator.Datas.Select(value => new BabylonAnimationKey { frame = value.Key / scene.AnimationKeyStep, values = value.Value.ToArray() }).ToArray(); babylonAnimation.loopBehavior = interpolator.LoopAfter; animations.Add(babylonAnimation); return(true); } return(false); }
bool DumpInterpolator(string name, string property, NovaVector3Interpolator interpolator, NovaScene scene, List<BabylonAnimation> animations) { if (interpolator.Ready && !IsInterpolatorIsEmpty(interpolator)) { var fps = scene.AnimationFramerate < 1 ? 30 : scene.AnimationFramerate; var babylonAnimation = new BabylonAnimation { name = name, property = property, dataType = BabylonAnimation.DataType.Vector3, framePerSecond = fps }; babylonAnimation.keys = interpolator.Datas.Select(value => new BabylonAnimationKey { frame = value.Key / scene.AnimationKeyStep, values = value.Value.ToArray() }).ToArray(); babylonAnimation.loopBehavior = interpolator.LoopAfter; animations.Add(babylonAnimation); return true; } return false; }
bool IsInterpolatorIsEmpty(NovaVector3Interpolator interpolator) { for (int index = 0; index < interpolator.Datas.Length - 1; index++) { if (interpolator.Datas[index].Value != interpolator.Datas[index + 1].Value) { return false; } } return true; }