k-l-lambda's picture
feat: add Python ML services (CPU mode) with model download
2b7aae2
function WebGLAnimation() {
let context = null;
let isAnimating = false;
let animationLoop = null;
let requestId = null;
function onAnimationFrame(time, frame) {
animationLoop(time, frame);
requestId = context.requestAnimationFrame(onAnimationFrame);
}
return {
start: function () {
if (isAnimating === true) return;
if (animationLoop === null) return;
requestId = context.requestAnimationFrame(onAnimationFrame);
isAnimating = true;
},
stop: function () {
context?.cancelAnimationFrame(requestId);
isAnimating = false;
},
setAnimationLoop: function (callback) {
animationLoop = callback;
},
setContext: function (value) {
context = value;
},
};
}
export { WebGLAnimation };