Thoughts on modern demos

lycium/quixoft

Hello!


As a quick backgrounder, I was having a nice boring no-school-all-sleep day today. After I got up, brushed my teeth etc, I read some old Hugi mags which I hadn't looked at in ages (issues 13 to 17), particularly the demoscene-relevant articles (I normally go straight for the programming stuff :)).

I came across all these "the scene is dying" articles again, and the whole big debate presented itself to me again... man, all those thoughts I'd forgotten. :) Well, I remember always being of the contrary opinion, and suddenly all those reasons came back to me. Since the issue seems to have died down a bit, I think I'll just put in my 2c, as a (currently) non-involved demoscene programmer and observer.

I haven't been watching demos for as long as 90% of you guys, but I always remember liking them. I think the first demo I saw was "Hard Rox" by Skal... on a shite Cyrix / IBM 6x86 "150" (read: P75). Well, compared to all the other 3D stuff I'd seen prior to this, well... this rocked. :) I remember thinking that demoscene engines were always somehow "inferior" to Quake (this was around '95), but this started to make me truly wonder...

I never experienced the "golden days" of the demoscene (Future Crew, Valhalla, etc), but I have seen the demos. By experienced, I mean watching the demos on the hardware on which the demo was meant to run, not something 10x (note that that's about accurate, the "150" was about 10x faster than a 386 ;)) faster. But sure, I can understand that it must've been groundbreaking, and I don't recall having seen any demos of similar quality from around then.

The point of all this is that for me (and I'm sure many new sceners, I don't know why Alien Prophets springs to mind), the demoscene has always been something of an artistic medium. I most enjoy designdemos more than techdemos most of the time, unless I have some idea of the amount of work and skill are involved (Fresnel and Rubicon spring to mind, respect to shiva and crossbone :)).

The thinning of techdemos doesn't really bug me too much, I still enjoy non-übercomplex demos with meanings (confine), feelings (mosaik by haujobb has never failed to give me goosebumps at that "woman holding her arms to the light" part) and pure style (Moral Hard Candy, Louis Lane and Kkowboy). I still enjoy technical masterpieces such as Fresnel, The Juggler, .the .product, etc but they are few and far between.

One thing that drove me to learn about ray tracing was the ever-increasing power of computers. Now while everyone's sitting around bitching about how bad it is to have > 500mhz processors that can handle good quality music (switch off the soundtrack in Mosaik, and email me to tell me it was the same experience, I dare you), high quality visuals (I rather liked how Maturefurk used my GF2MX in Lapsus) and fluid motion (Different Noise and a lot Seastar by Aardbei looks shite at low FPSs, especially the star that swings in from the right), I say "hey cool, now we can do <insert cool effect here>!"

I'm sorry to bring him up, but John Carmack (as an example, I know most of you guys are sick of being compared to him, I know I am :)) has never once bitched about having more computational power at his disposal. I like his analogy of "riding technology waves". That's exactly what we (ok, I'm talking to the programmers here :), as coders, have to do: keep up with technology and exploit it fully to produce something amazing.

I don't see not having to asm-code everything to get > 10fps as a bad thing, it lets us get more things done (and people expect more from contemporary demos than they do from oldskool demos). The way I see it, the only reason people are bitching about not having to spend 10 hours per line of asm code is because they are used to getting their respect from doing that, and someone who doesn't can now achieve the same effect. This of course pisses them off. :)

I say: "tough shit, this is the computer industry, it changes faster than any other industry! Get used to it!". Quite frankly, one couldn't expect the old asm-for-everything regime to stay anyway. Yes, it's a lot more difficult to write 3D code in pure, optimised asm than in C++ with vector operators etc, but that's behind us. Instead, we look towards new challenges: making previously impossible stuff possible (realtime wavelet video decompression springs to mind, but that already is possible: check Bleam by Statix + Vic).

Now that's a valid technical thing to persue, rather than bitching that you can't code your same old routines over and over again in asm. As a matter of fact, code something "impossible" in asm on a modern machine, you'll be surprised at what's possible. I used to code asm, but I don't anymore (well, except for stuff that's best implemented with special instruction sets like SSE and MMX).

Anyway, the point is that technical demos, and pushing machines to their limits, is still very possible. Though "impossible" becomes "possible" every 6 months, for those 6 months you're the king :) Then, if you're good (and quick to adapt), you'll do something else that was "impossible" before. Fake Phong (envmapping) was impossible before CPUs became fast enough to do texture mapping fast enough for realtime uses, and I'm sure SOMEONE, SOMEWHERE bitched that no one takes the time to code fast flat triangle fillers anymore. That's progress, sorry.


....


Now that I've gone off at just about everything, here's my global point:

Techdemos are still possible, and designdemos are still very cool. The scene is NOT dying.

Mosaik by Haujobb is probably the most amazing designdemo ever, it's up there with "two watermelons and one indoor ape" by Replay, Forms by Replay and many others that I've forgotten. These demos are amazing simply because of the feelings they project. It's bizarre how certain cobinations of visual and audio stimuli can produce such intense feelings in someone. That's what makes these demos amazing.

Fresnel by Kolor is still the holy grail of techdemos for me. I'm personally interested in wavelet image compression and ray tracing, so I know how much technical knowledge goes into a piece of code like that. That's what makes the demo interesting and amazing to me.

These two very different demo categories are how I divide the scene. And they're both doing really well, all the demos I just mentioned are quite new, and better ones keep getting released. My favorite demo (currently Mosaik) is extremely new, and I'm sure many of you hardcore oldskool sceners secretly like some modern demos. ;)

Anyway, that's my point on a lot of things. I have so many thoughts on so many elements of the subject (just look at all the stuff in brackets :)... it's good to just get them down on "paper".


Have a cool day!


lycium (Thomas Ludwig)


PS. I have 995mb of handpicked demos (and an old scene.org "mirror" on 2 CDs :)), so I like to think I know what I'm talking about.