8 bit GTW - Supercollider





Joshua: Volgiamo fare una partita?.
Jennifer: [Ridacchiando] Sentiva la mancanza di Falken.
David: Già.[Digitando sulla tastiera] Si, volentieri. Ti andrebbe Guerra Termonucleare Globale?
Joshua: Non preferirebbe una bella partita a scacchi?
David: Dopo, Giochiamo alla Guerra Termonucleare Globale.

(
{
var triggerSpeed, trigger;
triggerSpeed = 0.1;
trigger = Impulse.kr(triggerSpeed);
Pan2.ar(LFNoise0.ar(
TRand.kr(100, 1000, trigger),
mul: EnvGen.kr(
Env.perc(0.001, 3/triggerSpeed),
trigger
)
),0)
}.play
)


(
{
Pan2.ar(SinOsc.ar(SinOsc.ar(4/10, mul: 100, add: 1000), mul: 0.1) +
SinOsc.ar(SinOsc.ar(2/10, mul: 100, add: 1000), mul: 0.1) +
SinOsc.ar(SinOsc.ar(5/10, mul: 100, add: 1000), mul: 0.1),0)
}.play
)

2 suoni;

1) il trigger che è un Impulse.kr(0.1Hz, 1 volta ogni 10 sec) innesca il TRand.kr che produce una frequenza da 100 a 1000Hz randomicamente per il LFNoise0.ar, rumore la cui ampiezza ha un Envelopment percussivo con attacco istantaneo e un release di 3/0.1 secondi;

2) il secondo suono è creato dalla somma di 3 Sinusoidi modulate in frequenza da altre Sinusoidi a diverse frequenze, che da vita a interferenze costruttive e distruttive;

TRand           generatore di numeri casuali a innesco

TRand.kr(lo, hi, trig)
TRand.ar(lo, hi, trig)

Genera un valore float casuale nella distribuzione uniforme da lo a hi
ogni volta che il trigger passa da valori non positivi a valori positivi


Impulse     oscillatore a impulsi

Impulse.ar(freq, phase, mul, add)

genera un singolo campio di impulsi a banda non limitata.
freq - frequenza in Hertz
phase - offset di fase in cicli ( 0..1 )

Leave a Reply