Files

37 lines
1.1 KiB
JavaScript

export const makeInternalState = () => {
let drawnPrecomposedPixels = 0;
let precomposedTextures = 0;
let waitForReadyTime = 0;
let addSampleTime = 0;
let createFrameTime = 0;
const helperCanvasState = {
current: null,
};
return {
getDrawn3dPixels: () => drawnPrecomposedPixels,
getPrecomposedTiles: () => precomposedTextures,
addPrecompose: ({ canvasWidth, canvasHeight, }) => {
drawnPrecomposedPixels += canvasWidth * canvasHeight;
precomposedTextures++;
},
helperCanvasState,
cleanup: () => {
if (helperCanvasState.current) {
helperCanvasState.current.cleanup();
}
},
getWaitForReadyTime: () => waitForReadyTime,
addWaitForReadyTime: (time) => {
waitForReadyTime += time;
},
getAddSampleTime: () => addSampleTime,
addAddSampleTime: (time) => {
addSampleTime += time;
},
getCreateFrameTime: () => createFrameTime,
addCreateFrameTime: (time) => {
createFrameTime += time;
},
};
};