Skip to content

Instantly share code, notes, and snippets.

@ccellado
Forked from munrocket/shadertoy_exporter.js
Created May 14, 2025 04:14
Show Gist options
  • Save ccellado/f7250e18eca7cda902334753f02fe83c to your computer and use it in GitHub Desktop.
Save ccellado/f7250e18eca7cda902334753f02fe83c to your computer and use it in GitHub Desktop.
How to record cycled video from shadertoy
// copy paste this in console
function shader_exporter(duration, width, heigth, paused) {
document.getElementById('demogl').style.width = width + 'px';
document.getElementById('demogl').style.height = heigth + 'px';
document.getElementById('myResetButton').click();
document.getElementById('myRecord').click();
if (paused) document.getElementById('myPauseButton').click();
let t0 = performance.now();
function loop(){
if (performance.now() - t0 > duration * 1000) {
document.getElementById('myRecord').click();
if (paused) document.getElementById('myPauseButton').click();
} else {
requestAnimFrame(loop)
}
};
requestAnimFrame(loop);
}
shader_exporter(6.28318530, 512, 512, false);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment