Allow using vsync

This commit is contained in:
2024-05-24 17:49:08 +02:00
parent 4ea5c25a47
commit 351cc06495
3 changed files with 18 additions and 8 deletions
+9
View File
@@ -149,9 +149,14 @@ async function main(canvas: OffscreenCanvas) {
console.log("a")
}
requestAnimationFrame(render)
// self.clearInterval(interval)
// interval = self.setInterval(() => requestAnimationFrame(render), 1000 / shaderOptions.framerate)
self.clearTimeout(timeout)
if (shaderOptions.framerate == 0) {
return render
}
timeout = self.setTimeout(() => {
requestAnimationFrame(render)
}, 1000 / shaderOptions.framerate)
@@ -163,6 +168,10 @@ self.addEventListener("message", (e) => {
if (data.command == "initShader") {
canvas = data.canvas
shaderOptions.quality = data.shaderOptions.quality
shaderOptions.framerate = data.shaderOptions.framerate
if (shaderOptions.framerate == 65) {
shaderOptions.framerate == Infinity
}
screen.devicePixelRatio = data.screen.devicePixelRatio
screen.width = data.screen.width
screen.height = data.screen.height