Demoscene

Demo quem?

É uma forma de arte na informática com enfoque na produção de conteúdo áudio-visual com a união de programadores, músicos e artistas gráficos.  Com início na era dos 8 bits, os chamados intros eram inseridos em vídeo-games distribuídos ilegalmente por crackers.

Cada intro continha informações a respeito do grupo que havia crackeado o software. Inicialmente estática, as intros começaram a ganhar efeitos de áudio e vídeo e cada vez mais tentando ao máximo explorar a capacidade de processamento do hardware -extremamente limitado- na época, as habilidades de programação e domínio sobre o hardware eram colocadas a prova entre os grupos.

O foco cada vez maior na intro fez com que elas se desassociassem de um programa e fossem geradas por si só e assim surgiram as chamadas demos, estas, por sua vez, tornaram-se alvo de competição e grupos de programadores destinados a isso -os demogroups- foram criados.

Atualmente

Nos dias de hoje temos as demoparties que são eventos especializados em organizar competições e exibição de demos,  surgido na década de 80 possui um aspecto importante atualmente, embora não haja uma representação forte em muitos países.

As demos podem ser encontradas das mais diversas formas, como áudio-vídeo, áudio, imagem… e nas mais diversas arquiteturas como Commodore 64, IBM PC, Game Boy, PC x86 garantindo uma boa variedade de jeitos diferentes de se produzir e assistir a um demo.

Com certas limitações impostas, as demos são criadas com tamanhos limitados – como 64kB – e verdadeiras animações em 3D de vários minutos com áudio e vídeo são produzidas. Jogos também são produzidos desta forma, e com uma forma diferente de produzir texturas e objetos, jogos 3D conseguem ocupar apenas algums kB, como o .kkrieger e seus incríveis 96kB.

Alguns exemplos:

Follow the Sign III – Commodore 64

__2

rove – Farbrausch

E… ?

Uma das características das demos é a geração de conteúdo dinamicamente, seja os modelos 3D, o áudio, imagem, e pretendo aqui mostrar a produção de demoscene em forma de áudio em tempo de execução através de um programa na linguagem que preferir.

Uma simples estrutura básica seria:

e para ouvir basta: ./prog > /dev/dsp ou ./prog | aplay -r 8000

o algoritmo acima é um gerador de onda que consiste do arranjo de expressões de lógica booleana.

Um operador lógico pode combinar expressões assim como uma multiplicação pode alterar o tom do som, constantes criam características ao som final. Muitas pessoas com um conhecimento aprofundado de/sobre música conseguem perceber relações entre os operadores e sua influência, podem criar padrões de percussão e harmonias mas isto infelizmente foge a minha alçada e não sou capaz de produzir um som final belo com plena consciência do que fora feito.

Com a popularização deste tipo de demoscene, existe um site onde é possível simplesmente digitar a expressão e ouví-la logo em seguida, nada de downloads, compiladores… apenas um site, tente esta

Uma compilação de músicas:


Bom é isso pessoal, infelizmente não posso ajudá-los com as suas expressões e/ou algoritmos mas os incentivo a tentar criá-los (e ficaria feliz de as ver nos comments, :=D), apesar de haver uma teoria ‘maciça’ por trás é divertido tentar produzir sons através de umas linhas de códigos.

Uma referência muito boa é a do blog CounterComplex neste há uma explicação mais detalhada a respeito e com vários exemplos.

Uma notícia bem interessante de um lugar onde eu não esperava, mas muito boa: G1 – Tecnologia e Games.

Deixe uma resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre user="" computer="" escaped="" class="" title="" data-url=""> <span class="" title="" data-url="">