andrei-drexler / shadertoy-userscripts

Assorted userscripts for Shadertoy.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Getting started

If you're not familiar with userscripts, you can think of them as mini browser extensions. In order to use them, you first need to install a so-called userscript manager (an actual browser extension), like Tampermonkey. Once that's taken care of, you should be able to install any of these scripts using the links below.

Script list

Script Description

Comment preview
Install • View source

Adds comment preview functionality, so that you can check your BBCode for errors before posting. Also makes the comment input area resizable, in case you have a lot on your mind. Bonus: sets tab size to 4 (matching the editor), so that code pasted in comments aligns nicely.

Go to error
Install • View source

Adds Go to first error / previous error (Shift-F8) / next error (F8) functionality.

GPU timing
Install • View source

Adds a switchable HUD with per-pass GPU timing (click framerate display to toggle). You'll probably also want to disable GPU boost when profiling.

Framerate limiter
Install • View source

Adds a configurable framerate limiter, in case you want to conserve your laptop's battery life, or maybe play Contra on a high refresh rate monitor.

First-person mouse input
Install • View source

Adds a switchable first-person mouse input mode. When enabled, you only have to click once on the canvas and then you can move the mouse freely, without the need to keep the mouse button pressed, or worry about going out of bounds. Meant primarily for FPS-like shaders, such as Quake or DOOM, but it works nicely with pretty much any shader where you use the mouse to look around or scroll.

Force WebGL 1
Install • View source

Disables WebGL 2 support, forcing ShaderToy to use WebGL 1. Useful if you want to check whether or not your shader would run on fruity platforms that don't implement WebGL 2.

Enhanced video recording
Install • View source

Adds an explicit (high) bitrate, limits the recording framerate to 60 fps (shader still running at full speed), changes the codec to H264 if available (for better compatibility with video editing/playback software), generates a more descriptive output file name (e.g. Quake_Introduction-20190130-1948.webm), and also resumes the shader (if paused) when you begin recording and pauses it when you're done.

About

Assorted userscripts for Shadertoy.com

License:The Unlicense


Languages

Language:JavaScript 100.0%