The Demoscene

The demoscene is an international computer art subculture focused on producing demos: self-contained, sometimes extremely small computer programs that produce audiovisual presentations.

Since the late 80s the demoscene organize events called demoparties, typically during a weekend, where demosceners gather to socialize and participate in different competitions of digital art involving graphics programming, size coding, graphics and music.

In 2013 there was a demoparty in Poland that included a different kind of event in their schedule, it involved 16 demosceners doing live code. The event was so successful that other parties picked up the idea and it became what is more known in the demoscene as the Shader Showdown.

Ofcourse livecode exists beyond the demoscene with other names such as algorave, etc. This website is dedicated to archive only the demoscene related livecoding events.

More about the demoscene:

Live Coding

Live Coding is a contributive performance with one or multiple artists using code to generate real-time graphics and/or music.
More info: https://github.com/toplap/awesome-livecoding

Shader Showdown

Two performers sit down and code from memory something that will make the audience vote for them, they both start from same default screen and have 25 mins to finish their effect. Using a pixelshader prototyping tool called Bonzomatic.

Shader Jam

Multiple live coders jamming some visuals for a music act/DJ set, no voting involved.

Shader Royale

Larger number of simultaneous live coders participating, all starting at same time. The audience votes who gets eliminated next in a Battle Royale format.

Byte Battle

Similar to Shader Showdown, but using the fantasy console TIC-80, and limited to 256 bytes is code length.

How to participate

To learn shader coding there are a number of useful resources:

To join a future event, check upcoming events and contact the event organizers.

Join the discord channel of the project.

How to contribute

You can contribute to this website by submitting missing information, source code, etc to the GitHub project.

Check the contributing guide for submission guidelines and details.