adonnaM.mp3
I love you
origami digital - Demos without Restrictions
Kleine Demo-Gallery
origami digital - Fotos der Ausstellung
History
Demo-Szene heute
Restrictions & Ethik
Technik & Programmierung
Parties - das Event der Demo-Szene
Diskmags - das Medium der Demo-Szene
Glossar
weiterführende Links
SMS museum guide
digitalcraft STUDIO
Technik & Programmierung

Im Gegensatz zu vielen Anwender-Programmen, die meist in C++ oder einer anderen höheren Programmiersprache programmiert werden, wurde für ein Demo ursprünglich nahezu ausschließlich die Maschinensprache Assembler verwendet. Im Gegensatz zur objektorientierten Programmierweise, wie sie in C++ und anderen Programmiersprachen verwendet wird, oder auch etwa zu Scriptsprachen wie JavaScript und Perl, ist Assembler speziell an die Architektur eines bestimmten Prozessor-Typs angepasst und verwendet nur Low-Level-Befehle. Dadurch wird ein sehr schlanker und effizienter Programmcode möglich.

In der Tat ist Assembler relativ schwer zu erlernen und für die Realisierung großer und umfangreicher Projekte eher unhandlich. Daher wird es mittlerweile häufig nurmehr punktuell für besonders performancekritische Teile des Programmes eingesetzt, bzw. für Demos, die nach ihren restrictions besonders klein sein sollen, etwa unter 64 KByte. Für einen Großteil der übrigen Programmierung greifen heutzutage auch Demoprogrammierer mehr und mehr auf C und C++ zurück. Die Aufgaben des Coders (Programmierers) einer Gruppe liegen neben dem Entwurf und der programmiertechnischen Umsetzung von Effekten des weiteren in der Einbindung von Bild- und Musikmaterial der anderen Gruppenmitglieder, also in der Komposition des Gesamtwerkes.


Doch nicht allein die Programmierung macht ein gutes Demo aus – der gleiche Stellenwert kommt auch Grafik und Sound zu. Dabei hat die Grafik mehrere Funktionen zu erfüllen: Neben ihren optischen Reizen kann sie als eine Art „Augenbinde“ für den Betrachter verwendet werden, die diesem einige notwendige Rechenoperationen im Hintergrund verbergen soll. Da Demos im allgemeinen in „Realtime“, also während der Laufzeit des Programms, berechnet werden, kann es durchaus vorkommen, dass eine kurze Pause entsteht, innerhalb derer der nächste Effekt berechnet wird. Und was könnte diese Unterbrechung schließlich besser kaschieren als die Einblendung einer gelungenen Grafik?

Den technischen Beschränkungen der frühen Hardware geschuldet, hat sich in der Demo-Szene eine eigene Technik zur Bilderstellung durchgesetzt: das Pixeln. Etwa eine Raytrace-Grafik mit Millionen von Farben war in der Entstehungsphase dieser Subkultur schon aus Gründen der Rechenleistung vollkommen undenkbar. Aufgrund der „Restrictions“ ist sie es weitgehend bis heute geblieben: Eine solche Grafik belegt schon für sich mehr Speicherplatz als üblicherweise ein ganzes Demo. Also wurden die Grafiken Punkt für Punkt (Pixel) von Hand „gezeichnet“. Durch zeichnerische Tricks können diese Grafiken, obwohl sie nur 16 oder 32 Farben verwenden, dennoch den Eindruck eines digitalisierten Bildes mit 256 oder mehr Farben vortäuschen. Wie sich die Grafiken darstellen, die heute mit 256 Farben gepixelt werden und nicht selten Monate zur Herstellung benötigen, kann in aktuellen Demos bewundert werden.


Auch für die Soundgestaltung wurden spezielle Techniken entwickelt. Da es aus Speicherplatzgründen ursprünglich gleichfalls unmöglich war, digitalisierte Musik und Sounds „unter“ die Grafik zu legen, und zudem der Soundtrack längst ein wichtiges kompositorisches Element des Demos ist – also genau auf die visuellen Elemente abgestimmt sein sollte –, galt es auch in dieser Hinsicht alternative Möglichkeiten zu finden. In der Regel bedient man sich des „Module“-Formates, das mittels sogenannter Tracker editiert wird. Bei diesem Format werden alle verwendeten Instrumente am Anfang der Datei als kurze Samples gespeichert und danach auf mehreren Spuren in verschiedenen Tonhöhen und -längen arrangiert.

Um die Datenmenge zu reduzieren, müssen die Samples jedoch möglichst klein (kurze Dauer, niedrige Auflösung, meist 8 bit) und die Anzahl der Spuren möglichst gering (üblicherweise vier) gehalten werden, was allerdings notwendigerweise mit Qualitätseinbußen im Klang einhergeht. Die Kunst des Musikers besteht nun darin, aus diesem qualitativ eher schlechten Ausgangsmaterial ein technisch und künstlerisch hochwertiges Musikstück zu kreieren, das perfekt auf die Atmosphäre des jeweiligen Demos zugeschnitten ist. Die individuellen Formen der einzelnen Töne, wie Tonhöhe, Tondauer, Lautstärke und Modulationen wie Vibration etc., werden dabei für jeden einzelnen Ton im Tracker quasi „programmiert“. Mittlerweile wird jedoch auch verstärkt auf komfortablere Mehrspur-Musiksoftware und Kompressionsverfahren wie MP3 zurückgegriffen. Dies vereinfacht zwar die Erstellung eines Demos erheblich, zieht allerdings auch erheblich höheren Ressourcenbedarf nach sich.