
Demoscene guidebook (2018) - bane
https://github.com/psenough/teach_yourself_demoscene_in_14_days
======
onion2k
I've followed the demoscene for nearly three decades, and the demos get put
out every year have always been hugely impressive. The old Amiga stuff like
Technological Death was great but the more modern demos like Intrinsic Gravity
by Still
([https://www.youtube.com/watch?v=-ZxPhDC-r3w](https://www.youtube.com/watch?v=-ZxPhDC-r3w))
are just _amazing_.

You can get pretty far making demo effects in CSS and JS these days. A couple
of my attempts over on Codepen;

Text flash -
[https://codepen.io/onion2k/full/WyLoNg](https://codepen.io/onion2k/full/WyLoNg)
(Warning: flashing images)

Bitmap text wobble scroller -
[https://codepen.io/onion2k/full/rYgxdJ](https://codepen.io/onion2k/full/rYgxdJ)

~~~
n3k5
> _Intrinsic Gravity by Still_

This one is fun to watch on a 3D display. (As much of it is black & white,
anaglyph should also be worth a shot.)

Most of the effects could have plausibly been rasterised or blitted into a
flat plane; alternatively, all of it could be done in a pixel shader which
just colours in two triangles that fill the screen. But (as I discovered to my
delight one day when I happened to have access to a Windows machine with a 3D
monitor) it's all 3D geometry with a perspective projection.

For example, the wibbly-wobbly cone[0], viewed in 2D, could just as well be a
flat bunch of sinusoidally gyrating discs all XORed together. But these discs
are properly stacked along the Z axis.

The demo doesn't natively support stereo displays, so you have to find a tool
that can inject itself into the graphics pipeline and modify the projection
matrix for each eye. I don't remember which one I used when I tried that, but
it had a nifty feature you should seek out: Hotkeys that let you adjust the
mapping of depth to the stereoscopic shenanigans (separation and convergence)
on the fly. Being able to make such tweaks on a scene-by-scene basis helps a
lot with a production that was only designed for cyclops mode originally.

The same technique can be applied to many PC demos, but usually it only
amplifies a 3D effect that was already there in the first place. In the case
of Intrinsic Gravity, it gives you an extra dimension of ' _whoa_ '.

Bonus recommendation for those who can't be bothered with any of that and just
want to watch a neat recording on Youtube: Stargazer by Orb & Andromeda[1].
Nothing earth-shattering; just a personal favourite with a modern take on old-
skool demoscene aesthetics and neat effects that don't fall apart in a video
capture with limited bit rate.

[0] [https://youtu.be/-ZxPhDC-r3w?t=67](https://youtu.be/-ZxPhDC-r3w?t=67) [1]
[https://youtu.be/xgtghVdWlVY](https://youtu.be/xgtghVdWlVY)

~~~
onion2k
Stargazer is a great demo.

------
carapace
"A Mind Is Born" [https://linusakesson.net/scene/a-mind-is-
born/](https://linusakesson.net/scene/a-mind-is-born/)

> Making a demo in just 256 bytes would be a formidable challenge regardless
> of platform. A Mind Is Born is my attempt to do it on the Commodore 64.

~~~
na85
I'm convinced Linus Akesson is a warlock practising black magic. His
"chipophone" is one of the best hacks I have ever seen.

------
ssdsa
Everything the C64 demo scene produces is cataloged and archived at
[https://csdb.dk/](https://csdb.dk/) You can find the latest releases here:
[https://csdb.dk/latestreleases.php](https://csdb.dk/latestreleases.php) \-
The C64 demo scene is still very active. There are nearly 40 releases from the
last 4 days.

------
notkaiho
The fact that kids barely older than me in the 80s were cranking out stuff
that used the C64 to its limits blows my mind. The demoscene is intensely
inspiring, if really impenetrable to an outsider.

~~~
royjacobs
The best way to penetrate it is to just write a demo! It's fairly certain that
it will be terrible, but the point is you tried and you will improve.
Hopefully you'll get some pats on the back along the way, inviting you to try
again with a second demo, and so it begins...

~~~
snvzz
A demo seems like a seriously high hurdle. Maybe a 4K intro.

~~~
taneq
A 4K intro (a decent one anyway) is much harder than a larger one. "If I had
more time I'd write you a shorter letter..."

I found a 256k intro to be a pretty good balance, constrained enough that you
don't need a pro-quality art team to look good, but still enough space that
you don't have to go too deep into procedural generation and compression.

~~~
snvzz
I find a lowish size limit is a good equalizer. Higher chance to succeed as an
individual.

I don't know about 4K vs 256b. A particularly appealing format is amiga
bootblock, which is a little under 1K because a signature is needed.

With no limits, you'd be going against large groups with much experience. A
new scener stands no chance.

~~~
jefftk
256k not 256b

~~~
snvzz
Oh. 256KB is a quite odd format to pick.

~~~
taneq
It used to be one of the standard brackets: 4k, 64k, 256k, and open (although
there was often an upper limit like 4MB to limit download time.)

~~~
tripzilch
When was 256k a standard bracket? Can't remember. There might have been some
odd exceptions, but it's always been 4k, 64k and (big) demo (indeed often
limited to a few MB, dunno if that rule is still effective).

Those categories you would have at every party. Usually times categories for
PC/Amiga/C64. The 256k or 256b or the 96k game categories were usually one-
offs or specific to a party.

Now it's been about 15 years since I was active in the demoscene, so maybe
256k demos have become a thing in the mean time. But I would think that's
silly because going from 64k to 256k doesn't really give you a new world of
possibilities, it's just a bit bigger than 64k.

There are 64k's that show eye candy which can compete with the big demos, yes
it's hard but not a lot of big demos are doing things you couldn't do in 64k.
Why put 256k in between that? It sounds like a category for people that
started out writing a 64k and then ran out of space.

I'm really curious, name me one thing you can do in a 256k that you simply
cannot do in a 64k? (for the other categories these have easy answers)

~~~
taneq
It's a long time ago but I'm sure I remember 256k brackets being a thing.
Maybe not as big as 64k intros but still.

And you're right, there's nothing really that you could do in 256k but not
64k, it's just much easier to fit your assets and code into the limit so you
can spend more time on the demo itself and less time on space optimisation, so
it's more casual-friendly.

------
ssdsa
I smiled when I read the word "graphician" in the guidebook. That word doesn't
really exist, or rather, it didn't exist until my scene group friend going by
the handle OMG
[https://csdb.dk/scener/?id=2772](https://csdb.dk/scener/?id=2772) at the time
invented the word:
[https://www.urbandictionary.com/define.php?term=graphician](https://www.urbandictionary.com/define.php?term=graphician)

~~~
pavlov
I remember the word from '90s demoscene. I always assumed it's a clunky direct
translation from "grafiker", which means "graphics artist" in both Swedish and
German.

Congratulations to your friend for this efficient space-efficient word coinage
;)

------
sorenjan
This should probably mention Notch[0], a program for real time graphics that's
written by a programmer[1] in the Fairlight group. It started as their demo
tool and seems to have evolved to something more general. Other demo makers
use it too now.

[0] [https://www.notch.one/](https://www.notch.one/)

[1]
[http://www.pouet.net/user.php?who=191](http://www.pouet.net/user.php?who=191)

~~~
skrebbel
In all fairness, Smash is mostly a Jazz musician.

~~~
sorenjan
I'm afraid this reference went over my head. This Smash is an alias for Matt
Swoboda.

~~~
skrebbel
I just spent several minutes explaining it, then deleted the comment because
it's obviously an in-joke that's not funny when explained. Sorry, in-jokes
don't belong on HN (except HN-in-jokes ofc).

The gist is that Smash is not only a spectacularly skilled coder and artist,
but also an extremely nice guy (like just about every demoscener) and that
sceners have a habit of colloquially mocking one another.

~~~
sorenjan
Ok. As you can tell, I'm not really a part of the demoscene, merely an admirer
from the outside.

------
JeanMarcS
One day I watched a 3D engine demo in a 1KB executable file.

It was unbelievable ! With my business partner we always wanted to have time
to make one (not even in 1024 bytes, just one)

Those guys were (and still are) amazing.

~~~
DagAgren
The most important thing to understand here is that these people are NOT
actually that amazing! They are a wide spectrum of coders, artists and
musicians of widely varying capabilities.

What people do have is some very PARTICULAR skillsets. You can pick up those
skills too! People will help you out if you ask! You can learn all these
tricks if you want to. It takes some effort and inspiration, but it is doable
for most people. It's not magic, it's just learning things. Things that are
often utterly useless, but fun!

~~~
onion2k
It's also important to note that we only see the end result, and not the 100
iterations before that evolved to the final, impressive version. Very few
developers could just jump in and code what gets published.

That said, if you watch some Shade Showdown competitions on YouTube you'll see
demosceners effectively doing exactly that. It's quite intimidating how good
they are.

~~~
illys
I think very few people are able to hold with the 100+ iterations of
improvement... This persistence and the quality of the result are where they
are amazing. Skills can be taught and learnt, but obstinacy is a quality that
cannot be developed just by anyone, it is a character trait.

------
joemi
I was really into the demoscene back in the early/mid 90's. These days it's
fun to find out about some old demoscene people who went on to interesting
things. Mostly I hear about people getting into the game industry. Some of my
favorites of note: Some of the Future Crew guys went on to make Remedy
Entertainment (and made Max Payne and Alex Wake games, among others) and Rovio
(makers of Angry Birds) was started by some TPOLM people.

~~~
b3lvedere
I loved Purple Motions music back then. He's still awesome:
[https://en.wikipedia.org/wiki/Jonne_Valtonen](https://en.wikipedia.org/wiki/Jonne_Valtonen)

------
b3lvedere
This brings back some fun memories. Back in 94 i attended the Assembly in
Helsinki, Finland. Amazing people with incredible potential.

~~~
_0ffh
That's funny, because so did I! =)

~~~
b3lvedere
Maybe we saw each other :)

The group i was with reached 5th place with this demo:
[http://www.pouet.net/prod.php?which=41739](http://www.pouet.net/prod.php?which=41739)

~~~
_0ffh
Maybe we did, who can say? I was not attached at the time, and didn't have
anything prepared. Did a little on-site 4K though. Started out with Turbo
Pascal, and then migrated to hand coded assembler on a function-by-function
basis until I ended up with pure asm. Then did a bit of whole-programme
optimisation, mostly the parameter handling. T'was kind of a shitty prod, but
fun. Didn't even need a packer.

IIRC I mainly hung out with the guys from The Coexistence and a BBS operator
called Scythe. Nice guys all, and Scythe gave me a good ratio on his Box. Good
times! =)

~~~
soulchild77
Funny, a guy called Scythe, operating a board called Burning Chrome was a
member of my group (Paranoia). We mainly developed PCBoard PPEs. Good times
indeed! ;-)

~~~
_0ffh
Omfg, Burning Chrome, that's the one! I remember I dug the Gibson reference,
still do in fact!

Btw Paranoia rings a bell as well, definitely not an obscure group at all.
This is turning into a blast from the past! ^_^

~~~
soulchild77
Hehe, sometimes Hacker News is unbelievable. ;-) So, I take it you‘re from the
Cologne area as well, given the Burning Chrome‘s proximity to the city (if
memory serves) and long-distance calls were outrageously expensive.

------
HugoDaniel
This is awesome!

These knowledge bits surprisingly work really well if you are launching your
own ideas in other formats (business, art, code, etc...), or doing other stuff
just for fun.

Made my day :D

------
fractalf
If you are into javascript there is a lot of nice demos here:
[https://js1k.com/](https://js1k.com/)

~~~
twiceaday
And here: [https://www.dwitter.net/top/all](https://www.dwitter.net/top/all)

------
LongHalloween
Going through the guidebook, anyone would know the difference between the
graphician and the coder roles in making a demo? I’ve done a bit of Processing
and P5js and these two roles seem to me to be overlapping, aren’t they? As
you’re coding the graphics.

Is the difference the same as Web Designer vs. Web Developer in a more
familiar context?

~~~
Narishma
I think that's a made up word that just means a graphics artist.

~~~
IcePic
Then again, for things like C64 picture formats, you need to work within the
various limitations and the cheat programming one can use to extend the
palettes and forcing badlines more frequently and so on which makes the artist
need a lot of programming skills too.

------
0xdeadbeefbabe
How about that program that says, "Water detected in drive A:" and then it
spins the drive to dry it. Can it be in the demoscene?

