Demozoo is looking for screenshots of browser-based demoscene releases! This includes demos that run in browser environments such as ShaderToy. You can capture your favorite moments in demos using the free VLC media player and recorder. I will walk you through the capture process and show you how to upload the resulting images to Demozoo.
All of the programs I use can run on Linux, Mac, or Windows, and probably other Unix-like OSes. I tested the steps for this article on Windows.
There are a lot of steps, but they all take longer to describe than to actually do! Remember: Demozoo supports high-res images and multiple screenshots, so you can go wild!
-
Download and install a desktop version of VLC. It supports Windows, Mac, and Linux. (I used VLC version 3.0.8.)
-
Open VLC.
-
On the
Tools
menu, selectPreferences
. -
(see screenshot) (1) Click on
Hotkeys
, (2) type "snapshot" in theSearch
box, and make note of the "Global" hotkey forTake video snapshot
. This is the key you will press while the demo is running to save a screenshot. In my case, it isAlt
+F12
. -
Install at least two browsers. Some demos only run on Chrome or only on Firefox, so have several available.
-
Install GIMP. You will use it to bulk-crop the images in the "Post-processing" section, below. If you already have a program that will crop multiple image files, you can skip this step.
-
Download the Export Layers GIMP plugin by khalim19 from here.
-
Install the Export Layers GIMP plugin usingper the instructions here.
-
(Optional; recommended) Install my layernav plugin as described in "layernav.py", below.
-
Open VLC.
-
On the
Media
menu, selectOpen Capture Device...
. -
(see screenshot) (1) Select the
Capture Device
tab. (2) Change theCapture mode
toDesktop
(i.e., your screen). (3) Pick a frame rate for the capture. Lower rates will make the demo perform better, but will make the screenshots lag the hotkey press. Start with 5 f/s (frames per second) and see if that works for you. (4) Click the downward-pointing arrow next to thePlay
button. (5) ChooseEnqueue
from the drop-down menu. -
You will see a
screen://
entry in your playlist. When you are ready to go, you will double-click that entry to start capturing.
Get the demo running on your PC! This will vary by demo.
- Conduit by Gargaj may help you with this.
- You can also check the
README
orFILE_ID.DIZ
included with a demo to see what it runs on. For example, Voltra'sFILE_ID.DIZ
suggests Chromium and Edge.
Note: if you only have one monitor, make sure you can run the demo in windowed mode, not full-screen. That will make it much easier to interact with VLC while the demo is running.
You may need to change your browser settings to permit Web pages to auto-play sound in order for the demo to start.
Once you are able to run the demo in one window, with VLC open in another window, you are ready to take screenshots.
-
Back in VLC, double-click the
screen://
entry. You will see your desktop appear in VLC: -
Minimize VLC so you don't get an infinite tunnel :) .
-
Start the demo.
-
At — or just before — a part you want to take a screenshot of, hit the hotkey you noted above (
Alt
+F12
for me).- You will only get feedback in the VLC window, so you won't know that the capture has succeeded if VLC is minimized. Don't worry: the image will still have been captured.
-
Hit the hotkey multiple times for as many screenshots as you want to take!
-
When the demo is over, go back to VLC. Wait a few seconds to make sure it's finished processing screenshots, then hit the square Stop button at the bottom of the VLC window.
- You will know it's still processing if you see screenshot frames appearing in the upper-left corner of the image, or if you see text overlays like "vlcsnap.png".
If you have a multi-monitor system or ran the demo windowed, you will need to trim the screenshots to show just the demo content. If you were able to run the demo in full-screen mode on a single monitor, you may be able to skip this section.
-
Open GIMP.
-
On the
File
menu, selectOpen as layers...
. -
Navigate to the
Pictures
folder, or wherever VLC saves screenshots on your platform. -
(see screenshot) Click the first
vlcsnap
file, scroll to the end, and shift-click the lastvlcsnap
file:From this point, anytime you save a GIMP (
.xcf
) file, it will save all of your screenshots in that one file. -
On the
Layers
menu, selectStack
, then selectReverse Layer Order
from the pop-out menu. This will put the first screenshot first rather than last. -
(see screenshot) (1) Click on the
Layers
tab to make the Layers pane visible. (If you can't see theLayers
tab, go to theWindows
menu, selectDockable Dialogs
, then selectLayers
in the pop-out menu.) You will see all yourvlcsnap
files listed. (2) If any vlcsnaps aren't screenshots of the demo, or if you don't want to upload them, (2) click on them in theLayers
box and (3) click the "X" to delete them.To see only one layer, (4) click on the eye icons on all the other layers to turn them off, so that only the layer you want to see has an eye icon visible. For an easier way to navigate the layers, see "layernav.py", below.
-
(see screenshot) (1) Click on the rectangle-select tool in the toolbox. (2) Draw a selection rectangle around the area of the demo.
I recommend zooming in on the top-left corner, starting the selection, zooming out, moving the bottom-right corner of the selection close to where you want it, then zooming in to finish the bottom-right corner. You can zoom with
Ctrl
+mouse wheel (on Windows).In GIMP, you can use Undo if you change the selection in a way you don't want.
-
On the
Image
menu, selectCrop to selection
. That will crop all the screenshots (all the layers) at once. -
On the
File
menu, selectExport Layers...
. -
(see screenshot) (1) Click
Create Folder
. (2) Give the folder a name. I used the name of the demo (Vorteilspack). Hit Enter to create the folder. Double-click on the folder to open it. (3) ClickExport
. -
You will see an
Export Image as PNG
dialog. Hit Export in that dialog. You will see the progress bar at the bottom of the VLC window repeatedly fill while the images are exported.
Finally!
-
In the browser, go to the page for the production you have screenshots for.
-
If there are no screenshots, click
Add one
:Otherwise, click
Add screenshot
below the existing screenshots: -
(see screenshot) (1) Click
Choose Files
and select your images. Alternatively, drag and drop your images onto theChoose Files
button. Note: the total file size should be under 10 megabytes. (2) You will see the number of files to be uploaded. Make sure it matches what you expect. (3) ClickSubmit
. -
Wait for the upload!
If you get a
413
error, try again with fewer files at once. I think the limit is 10M, but am not sure (question pending answer). -
Bask in the glory of the page with screenshots, and in the glow of the knowledge that you have helped the scene!
I wrote a GIMP plugin to make it easier to navigate between layers. To use it:
-
Download layernav.py
-
Copy layernav.py to your GIMP plugins directory. For GIMP 2.8, that is probably
.gimp-2.8
in your home directory. For GIMP 2.10, it is probably :- Linux or other Unix-like:
~/.config/GIMP/2.10/plug-ins
- Windows:
%APPDATA%\GIMP\2.10\plug-ins
- Mac:
~/Library/Application Support/GIMP/2.10/plug-ins
This MakeUseOf article (by Andy Betts) may help you.
- Linux or other Unix-like:
-
Restart GIMP.
-
On the
Edit
menu, selectKeyboard Shortcuts
. -
(see screenshot) (1) in the
Search
box, type "layernav". (2) Next toShow next layer
, click on the wordDisabled
. Press a hotkey — I useCtrl
+Shift
+Page Down
. (3) Do the same forShow previous layer
. I useCtrl
+Shift
+Page Up
. (4) PressClose
.
When you have an image open, press the hotkeys you chose to navigate between layers. If no layer is visible, the plugin will take you to the first layer.
This article is copyright (c) 2019 cxw. Please feel free to use and share it under the terms of the CC-BY-NC 4.0 International license. For the avoidance of doubt, merely using or sharing this document on a work computer does not inherently count as commercial use. But if your day job actually involves scening, please let me know so I can apply :) .
- a PC Tonic article for helping me get started with capturing in VLC
- Alpha Coders for my desktop wallpaper, by AlphaEdifice6083.
I am not affiliated with any of those parties.
- menace for the opportunity to write this article!