@woosh/meep-engine
Version:
Pure JavaScript game engine. Fully featured and production ready.
30 lines (23 loc) • 799 B
JavaScript
import { Keyframe } from "../curve/Keyframe.js";
/**
*
* @param {AnimationCurve} curve
* @param {number[]} values
* @param {number[]} times
* @param {number} component_count
* @param {number} component_index
*/
export function curve_from_track_data_discrete(curve, values, times, component_count, component_index) {
const key_count = times.length;
for (let k = 0; k < key_count; k++) {
const value = values[k * component_count + component_index];
const time = times[k];
curve.add(Keyframe.from(time, value));
}
const keys = curve.keys;
for (let i = key_count - 1; i > 0; i--) {
const key = keys[i];
const prev = keys[i - 1];
keys.splice(i, 0, Keyframe.from(key.time, prev.value));
}
}