7 Broken Chords


Opdracht 7 van 9

In deze opdracht ga je gebroken akkoorden genereren bij het drukken van 1 noot op de kslider/keyboard. Je maakt gebruik van logica/algoritmes zodat jouw akkoorden gegenereerd kunnen worden voor alle noten van het MIDI-keyboard. Met een algoritme maak je onderscheid tussen welke noot gespeeld wordt zodat de akkoorden in de juiste trap gegenereerd worden. Met delays worden de noten gebroken afgespeeld.

Deadline: 5 December

Belangrijke objecten in deze opdracht:



Belangrijk:

Gebruik de help-files (alt-click). Bekijk ook de Max Keyboard Shortcuts en Max CheatSheet.

Plaats comments om duidelijk te maken dat je snapt hoe iets werkt.

Maak je patch netjes en overzichtelijk voordat je hem laat beoordelen!




a. Solo note

Tip: [%], [*], [+], [number], [kslider]


b. Major Chord Generator

Tip: [select], [trigger], [+], [message], [int]


c. Delay it!

Tip: [pipe], [delay], [dial], [slider], [*], [scale]

(voldoende)


d. Chords in key

Tip: [select], [+], [int], [trigger], [message]


e. Include the octave

Tip: [%], [/], [*], [+]

(goed)



Uitdaging (zeer goed)

Ben je klaar met alle bovenstaande opdrachten? Kijk eens naar een of meer van deze opdrachten om je patch mee uit te breiden:

Random Chord Progressions

Maak een sequencer die met 1 druk op een button een willekeurige akkoordprogressie genereert door enkele noten in een lijst op te slaan en deze vervolgens af te spelen en via jouw algoritme omzet in akkoorden. Voeg ook ritmische patronen toe aan de sequencer. Gebruik hiervoor: [uzi], [urn]/[random]/[drunk], [zl.group], [zl.lookup]

Meer toonladders

Maak een optie voor andere toonladders die gebruikt kunnen worden om akkoorden mee te genereren (bijvoorbeeld: mineur, dorisch, hexatonisch, of ga eens op zoek naar niet-westerse toonladders) en hun bijbehorende trappensysteem of breidt uit met septiem akkoorden. Probeer eens [bendout] te gebruiken zodat je kan afstappen van de 12-tone equal temperament stemming. Kijk eens naar objecten als: [zl.lookup], [expr], [vexpr], [coll].

Interpolated Chords

Verzin een systeem dat, zodra jij een volgend akkoord aanslaat, eerst een akkoord speelt dat halverwege het nieuwe akkoord en het vorige akkoord ligt. Hiervoor zul je moeten interpoleren. Je kunt beginnen met het gemiddelde nemen, maar je zou ook een systeem kunnen verzinnen dat meer stappen maakt om naar een ander akkoord toe te bewegen. Je kunt ook nog akkoorden laten genereren met verschillende liggingen en daar tussen interpoleren. Objecten als: [iter], [expr], [zl.group], [vexpr] kunnen van pas komen.