Mellanliggande MaxMSP (2 / 13 steg)
Steg 2: Steg Sequencer
Matrixctrl är en av mina favorit objekt i Max, det är verkligen användbart om du någonsin vill skapa ett rutnät gränssnitt eller sequencer. Matrixctrl lagra en array med staterna och ger ett grafiskt gränssnitt för interaktion. Du kan skicka meddelanden (listor över formuläret x y staten) till en matrixctrl genom dess vänstra inlopp och läsa förändringar i matrixctrl ut sitt vänster uttag. Du kan också skicka meddelanden som "getcolumn 4" in i en matrixctrl att läsa av alla stater i kolumn 4 på en gång, kommer dessa stater att skickas ut rätt utlopp.
Binder upp en matrixctrl som visas i bilderna ovan. Skicka utdata från din getcolumn meddelanden i ett packa objekt. Uttaget av packa matas antingen 1 eller 0 beroende på noden motsvarande i matrixctrl. Multiplicera utdata från packa upp av vissa nummer mellan 1 och 127 (jag valde 100) och skicka detta nummer till velocity inlet för ett makenote-objekt. Även tråd upp utdata från packa upp till ett meddelande mellan 0 och 127 (jag valde 60) och Anslut utgången från meddelandet i pitch öppningen av makenote. Tråd upp makenote tonhöjd och velocity utlopp i en noteout. Nu skickar denna bit av plåstret meddelande om när den får en 1 från packa och noteoff meddelanden när den tar emot en 0 från packa. Gör samma sak för alla 4 försäljningsställen av packa.
Skapa en "getcolumn #" messge för varje kolumn i din matrixctrl (min har 8 kolumner så jag gjorde getcolumn 0-7). Detta sätt kan du be matrixctrl att mata tillståndet för var och en av dess kolumn i serien. Tråd dessa meddelanden upp till en metro, counter och välj bläddra igenom alla kolumner på ett konstant tempo.
Nu låsa plåstret, slå på tunnelbanan och klicka på matrixctrl att ändra anteckningarna i sequencer.
----------begin_max5_patcher----------
1341.3oc0Z1siahCEG+5jmBKtb0ri72F165yQUUEgwSFZSfHvo6raUe2WrMI
MyLIw.N33UUEl.H7e+yGe74bL+b4hjU0uJaS.+E3yfEK94xEKLWRegE8+dQx
17WK1j2ZdrDU850ajIOXuU09skUajJy8P8WbWtp3kxp0esQVnruabp3Q3C.D
Qej.ObD7ke+dp2qd+Kp7ISSVu5a+oPjb7s2juUpjMeUVkupSJcOBr+d12g5e
1IsMaRYUm.9h9l+Z4R8gGFX2rR92cM6g1TIe0zQR5Z3lZ.EBObmmqqTsk+qo
8P3GgmiKXmbgY3BmoOhGGWXmpjpNxXt0mZJy2jbIprJuZ8zvxp8JUc0DG8So
5iT1giinWRmg9xEFhaka5DN.BP.Lf.n.FfCDiY7Ny87.N2bBKbLhmcFVfm5H
9CS+7MkvE06q5l+1g3QgU1.buXNIHNnJ8LTEMApp8tngS++mrylsx1170xO.
p0RUQ8l8aq.Gs+20HakUpbUYc0I.fQQV.X55v9CG69d5khHRMDkXrZEVa2zw
LAlKl.dmKXxc.SAZNgIi5MLSiHXJbAyrrYDlbKE8AlYQDLYNfIGSdjMavjxg
52tGvT.iHXBc.STF1BS3b.SbluFl7HhkXGrjvw1Y4z4fknLugIKXv7sIHcoI
xYFFQyDmkWCMvZAxl9PF+PDOiM+ANMr4UMH5vXlEfYPnWzoekVenCIBoCERr
1NDunCoKcLAyO7fum3YvYeZ6Z9zOQQQwG9C.B5ZQMAGoWTiZ8XdqcDKxLu8d
TRxFOJY7Ilm0McgMtSLh314XyCFo7SrHI1vPF05YrvkOkGFibbuwnXVh8GC8
0XDGEFitBthI3WKXAeyGUv70Xj7+AiQZGEYWNnBuycB8H1OqQZZTXM5pTSTx
UCNyWNhXmFUxTLGoYQk4n24Q56RtTQTXWwtU.w6EOo76sARUsR10BigHjqLm
w5AWfMIeayc5JlHvORDx0VH7Ft6Y4eWp655oG.x3lh3t+y6KL.xUD93y.foT
9+m2Tma1..6eLSkdg3pzKYlgcDiOKkwxtyJdT5E7ce119pc4EeG.s+aLFcnq
WrTyxflBeklM9sbB6wVN8wSSBXE0a2JqTefXcM6t8JvyM0aAExMaZOpzl0qL
9PNxqKXUhsE3hvXS1p7Zoz2W9rd6Q3Db4gg2VWdCAkGmTeYb5IXX15vd.LD7
3ACJ61BlK4gSuA6ib530xhAxNoiyfi2OEJlp2N5FgEDB44V5fn2crf0eLFNV
EDiXV+M3YYUPac16st3S.iAbWFyUMkuVnZ1L5BkxMQRPraHVOQQ5nJGdfToS
pRoaJaMKjYN+ldsok6td06+J0L5We82hh158MEGdsG9vw.+tC7jrUUVYrdN8
gXu4gdo7omjUmp3mJa0cBS+Dd1AkAqG1PzCMb5gND8fBmd5REAHbnG8l1GR8
vcomzvpGlqwKXX0C0EeDgUODG5QmSRH0C1EeXgUOHG5AQCqdb4+gGvwKzP7G
hClddmqtyqmv494cd5t2x4cN5t6zQDWxgEWxgGUxgMD4nKL3ItKmU8HFpdBD
evQFeHwEenowEenYwEez02zYjXbZX0iyHwHgUOthDiiCqdbFIVjY+v3QldDw
k8LCGY5IxleQSiL8jEWy2o7HSOga9EUDYquyiq02ICY7hfCqdPCQOgY7BGWo
6jN.5fQQkbzaIWfFrPznavxkZxlHbraoR9tc+P1z1+JMBIYa92paz+j+f4mk
U1eZ1ynjF4OJO77luFmj7lhWJUxB09F69Y8ZJOYotc90x+C.Do7pp
-----------end_max5_patcher-----------