<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Anthony Mattox &#187; article</title>
	<atom:link href="http://anthonymattox.com/category/article/feed" rel="self" type="application/rss+xml" />
	<link>http://anthonymattox.com</link>
	<description>Interaction Design and Digital Art</description>
	<lastBuildDate>Fri, 07 Oct 2011 13:30:07 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>The Friends&#8217; First iPhone App: Quiption Postcards</title>
		<link>http://anthonymattox.com/the-friends-first-iphone-app-quiption-postcards</link>
		<comments>http://anthonymattox.com/the-friends-first-iphone-app-quiption-postcards#comments</comments>
		<pubDate>Thu, 06 Oct 2011 18:55:56 +0000</pubDate>
		<dc:creator>Anthony</dc:creator>
				<category><![CDATA[article]]></category>
		<category><![CDATA[ios]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[quiption]]></category>

		<guid isPermaLink="false">http://anthonymattox.com/?p=3066</guid>
		<description><![CDATA[Over at Friends of The Web we&#8217;re excited to announce the release of our first iPhone app! Quiption lets you combine your photos with artistic, hand-lettered phrases and send them as real, printed postcards. It&#8217;s available in the App Store for free. We partnered with the wonderful folks at Sincerely who handle the printing and [...]]]></description>
			<content:encoded><![CDATA[<p>Over at <a href="http://friendsoftheweb.com">Friends of The Web</a> we&#8217;re excited to announce the release of our first iPhone app!</p>
<p><a href="http://quiption.com"><img src="http://anthonymattox.com/wp-content/uploads/2011/10/Quiption-website.jpg" alt="" title="Quiption-website" width="450" height="288" class="alignnone size-full wp-image-3067 shadow" /></a></p>
<p>Quiption lets you combine your photos with artistic, hand-lettered phrases and send them as real, printed postcards. It&#8217;s available in the <a href="http://search.itunes.apple.com/WebObjects/MZContentLink.woa/wa/link?path=app%2fQuiptionPostcards">App Store</a> for free. We partnered with the wonderful folks at <a href="http://sincerely.com/">Sincerely</a> who handle the printing and mailing of the cards.</p>
]]></content:encoded>
			<wfw:commentRss>http://anthonymattox.com/the-friends-first-iphone-app-quiption-postcards/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Introduction to Processing Workshop</title>
		<link>http://anthonymattox.com/introduction-to-processing-workshop</link>
		<comments>http://anthonymattox.com/introduction-to-processing-workshop#comments</comments>
		<pubDate>Sat, 24 Sep 2011 17:07:51 +0000</pubDate>
		<dc:creator>Anthony</dc:creator>
				<category><![CDATA[article]]></category>
		<category><![CDATA[betascape]]></category>
		<category><![CDATA[processing]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[workshop]]></category>

		<guid isPermaLink="false">http://anthonymattox.com/?p=3054</guid>
		<description><![CDATA[For Betascape, a weekend event of art and technology in Baltimore, I&#8217;m giving a workshop introduction to Processing. For the workshop I&#8217;m going through a series of demo scripts that take you through doing basic drawing in Processing through creating simple animations and using objects, arrays, and loops. All the scripts are extensively commented and [...]]]></description>
			<content:encoded><![CDATA[<p>For <a href="http://betascape.org">Betascape</a>, a weekend event of art and technology in Baltimore, I&#8217;m giving a workshop introduction to <a href="http://processing.org">Processing</a>. For the workshop I&#8217;m going through a series of <a href="http://anthonymattox.com/wp-content/uploads/2011/09/Intro-to-Processing-Workshop.zip">demo scripts</a> that take you through doing basic drawing in Processing through creating simple animations and using objects, arrays, and loops. All the scripts are extensively commented and might help you get started if you&#8217;re interested in learning <a href="http://processing.org">Processing</a>.</p>
<p>The scripts cover:</p>
<ul>
<li>Basic Procedural Drawing</li>
<li>Using Variables</li>
<li>Creating Simple Animations</li>
<li>Using Conditionals</li>
<li>Creating Custom Functions</li>
<li>Animating with Gravity</li>
<li>Mouse Interactions</li>
<li>Repeating Code with Loops</li>
<li>Storing Sequential Data in Arrays</li>
<li>Working with Objects</li>
<li>Arrays of Objects</li>
</ul>
<p>If you&#8217;re interested in getting started with <a href="http://processing.org">Processing</a> this may be a good place to start. Each script builds off the last and adds a new tool. Go through them slowly and create your own scripts using the new techniques from each. If you get stuck (it gets a little more complex with loops, arrays, and objects) there are tons of other great resources on the <a href="http://processing.org/learning/">Processing Site</a> and if you&#8217;re looking for some specific help, I&#8217;d be happy to point you in the right direction.</p>
]]></content:encoded>
			<wfw:commentRss>http://anthonymattox.com/introduction-to-processing-workshop/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Betascape Processing Workshop</title>
		<link>http://anthonymattox.com/betascape-processing-workshop</link>
		<comments>http://anthonymattox.com/betascape-processing-workshop#comments</comments>
		<pubDate>Mon, 12 Sep 2011 13:09:43 +0000</pubDate>
		<dc:creator>Anthony</dc:creator>
				<category><![CDATA[article]]></category>
		<category><![CDATA[betascape]]></category>
		<category><![CDATA[events]]></category>
		<category><![CDATA[processing]]></category>
		<category><![CDATA[workshop]]></category>

		<guid isPermaLink="false">http://anthonymattox.com/?p=3022</guid>
		<description><![CDATA[&#160; I&#8217;m excited to be giving a workshop on Processing at this year&#8217;s Betascape. Betascape is an annual weekend long event in Baltimore celebrating the intersection of art and technology. This year, it consists of a series of talks and workshops and a day of making. It&#8217;s taking place from September 23-25. If you&#8217;ve been [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://anthonymattox.com/wp-content/uploads/2011/09/betascape-logo.png" alt="Betascape" title="betascape-logo" width="450" height="146" class="alignnone size-full wp-image-3032" /><br />&nbsp;</p>
<p>I&#8217;m excited to be giving a workshop on <a href="http://processing.org">Processing</a> at this year&#8217;s <a href="http://betascape.org/">Betascape</a>. <a href="http://betascape.org/">Betascape</a> is an annual weekend long event in Baltimore celebrating the intersection of art and technology. This year, it consists of a series of talks and workshops and a day of making. It&#8217;s taking place from September 23-25.</p>
<p>If you&#8217;ve been interested in learning to create things with code, the <a href="http://processing.org">Processing</a> workshop can help get you started. We&#8217;ll take you through getting started with <a href="http://processing.org">Processing</a>, getting the very basics of programming, and sending you off with all the resources you need to continue learning and experimenting with code.</p>
<p>Check out <a href="http://betascape.org/">betascape.org</a> for more information on the event and to get <a href="http://betascape2011.eventbrite.com/">get tickets</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://anthonymattox.com/betascape-processing-workshop/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Games!</title>
		<link>http://anthonymattox.com/games</link>
		<comments>http://anthonymattox.com/games#comments</comments>
		<pubDate>Sun, 31 Jul 2011 15:51:58 +0000</pubDate>
		<dc:creator>Anthony</dc:creator>
				<category><![CDATA[art]]></category>
		<category><![CDATA[article]]></category>
		<category><![CDATA[games]]></category>
		<category><![CDATA[website]]></category>

		<guid isPermaLink="false">http://anthonymattox.com/?p=2994</guid>
		<description><![CDATA[I put up a little site to host the games I&#8217;ve been working on. Check it out at games.anthonymattox.com. Right now it features Pulsus, Orbit: currently a flash prototype of an eventual iOS game, and Plong: a little two player flash game. I hope to be adding some more soon.]]></description>
			<content:encoded><![CDATA[<p><a href="http://games.anthonymattox.com"><img src="http://anthonymattox.com/wp-content/uploads/2011/07/games-site-screenshot.jpg" alt="Website for Games by Anthony Mattox" title="games-site-screenshot" width="450" height="449" class="alignnone size-full wp-image-2995 topofpost shadow" /></a></p>
<p>I put up a little site to host the games I&#8217;ve been working on. Check it out at <a href="http://games.anthonymattox.com/">games.anthonymattox.com</a>. Right now it features <a href="http://pulsusgame.com">Pulsus</a>, <a href="http://games.anthonymattox.com/orbit">Orbit</a>: currently a flash prototype of an eventual iOS game, and <a href="http://games.anthonymattox.com/plong">Plong</a>: a little two player flash game.</p>
<p>I hope to be adding some more soon.</p>
]]></content:encoded>
			<wfw:commentRss>http://anthonymattox.com/games/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Full Browser Processing.js</title>
		<link>http://anthonymattox.com/full-browser-processing-js</link>
		<comments>http://anthonymattox.com/full-browser-processing-js#comments</comments>
		<pubDate>Sat, 16 Jul 2011 14:42:21 +0000</pubDate>
		<dc:creator>Anthony</dc:creator>
				<category><![CDATA[article]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[processing]]></category>
		<category><![CDATA[processsing.js]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://anthonymattox.com/?p=2980</guid>
		<description><![CDATA[I played around a bit with processing.js, an awesome bit of software that runs processing scripts in a browser using the HTML canvas element. I wanted to use it to create an animated full browser background for a web page. I couldn&#8217;t find any info on how to do this online, but came up with [...]]]></description>
			<content:encoded><![CDATA[<p>I played around a bit with <a href="http://processingjs.org/">processing.js</a>, an awesome bit of software that runs processing scripts in a browser using the HTML canvas element. I wanted to use it to create an animated full browser background for a web page. I couldn&#8217;t find any info on how to do this online, but came up with a solution. It may not be the most elegant, and performance starts taking a big hit at large sizes, but I wanted to share it in case anyone wanted to build on it or already has a better answer. I&#8217;ll also note that I haven&#8217;t tested this thoroughly.</p>
<p>Simply resizing the canvas element just stretches the rendered image so it needs to be changed within processing.</p>
<p>Since the <a href="http://processing.org">processing</a> script is essentially converted into javascript it&#8217;s possible to communicate between the <a href="http://processing.org">processing</a> script and other javascripts. So, I added an listener for the window resize event (using <a href="http://jquery.com">jQuery</a>), which calls a function in the <a href="http://processing.org">processing</a> function to resize the canvas element.</p>
<p>The javascript looks like this:</p>
<pre>
// javascript (requires jQuery http://jquery.com)

var ProcessingInit = function() {
  function resizeWindow() {
    var pCanvas = Processing.getInstanceById('pCanvas');
    pCanvas.resize($(window).width(),$(window).height());
  }

  $(window).resize(resizeWindow);
  resizeWindow();
}
</pre>
<p>It&#8217;s wrapped in a function so that it can be called from <a href="http://processing.org">processing</a> when the application is started. <code>ProcessingInit();</code> in the setup function. This makes sure the canvas element is fully instantiated before it tries to manipulate it.</p>
<p>It&#8217;s pretty straightforward on the <a href="http://processing.org">processing</a> side as well. That function simply calls the size function again. I&#8217;m not sure if that&#8217;s good practice, but it seems to work fine.</p>
<pre>
// processing

void setup() {
  size(800,600);
  ProcessingInit();
}

void resize(float X, float  Y) {
  size(X,Y);
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://anthonymattox.com/full-browser-processing-js/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Friends of The Web</title>
		<link>http://anthonymattox.com/hellofriends-of-the-web</link>
		<comments>http://anthonymattox.com/hellofriends-of-the-web#comments</comments>
		<pubDate>Wed, 29 Jun 2011 17:05:00 +0000</pubDate>
		<dc:creator>Anthony</dc:creator>
				<category><![CDATA[article]]></category>
		<category><![CDATA[Friends of The Web]]></category>

		<guid isPermaLink="false">http://anthonymattox.com/?p=2968</guid>
		<description><![CDATA[I&#8217;m excited to announce the launch of our new website here at Friends of The Web. We&#8217;re a web design studio just opening our doors here in Baltimore. We specialized in design and development on the web and on mobile devices. We&#8217;re especially interested in working with small local businesses and are open to any [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://anthonymattox.com/wp-content/uploads/2011/06/friends-of-the-website-about.jpg" class="lightbox"><img src="http://anthonymattox.com/wp-content/uploads/2011/06/friends-of-the-website-about-450x347.jpg" alt="" title="friends-of-the-website-about" width="450" height="347" class="alignnone size-medium wp-image-2969 shadow topofpost" /></a></p>
<p>I&#8217;m excited to announce the launch of our <a href="http://friendsoftheweb.com/">new website here at Friends of The Web</a>. We&#8217;re a web design studio just opening our doors here in Baltimore. We specialized in design and development on the web and on mobile devices. We&#8217;re especially interested in working with small local businesses and are open to any other interesting projects.</p>
<p>Check us out at <a href="http://friendsoftheweb.com/">FriendsofTheWeb.com</a>, and don&#8217;t hesitate to <a href="http://friendsoftheweb.com/contact">get in touch with us</a>!</p>
]]></content:encoded>
			<wfw:commentRss>http://anthonymattox.com/hellofriends-of-the-web/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Moving on From MICA</title>
		<link>http://anthonymattox.com/moving-on-from-mica</link>
		<comments>http://anthonymattox.com/moving-on-from-mica#comments</comments>
		<pubDate>Tue, 14 Jun 2011 13:48:49 +0000</pubDate>
		<dc:creator>Anthony</dc:creator>
				<category><![CDATA[article]]></category>

		<guid isPermaLink="false">http://anthonymattox.com/?p=2924</guid>
		<description><![CDATA[I&#8217;ve spent the last four years at the Maryland Institute College of Art and recently graduated. I had a great experience at MICA. It&#8217;s sad to leave, but I&#8217;m ready to start something new as well. Moving on I&#8217;m starting my own design studio, working on the web and other screen based platforms, with some [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve spent the last four years at the <a href="http://mica.edu">Maryland Institute College of Art</a> and recently graduated. I had a great experience at <a href="http://mica.edu">MICA</a>. It&#8217;s sad to leave, but I&#8217;m ready to start something new as well.</p>
<p>Moving on I&#8217;m starting my own <a href="http://madebyftw.com">design studio</a>, working on the web and other screen based platforms, with some good friends of mine. We&#8217;ve spent the last few weeks moving and setting up our new studio. We&#8217;re staying here in Baltimore and are excited to join the emerging tech community here. More on that will be coming soon.</p>
<p>Hopefully I&#8217;ll have a little more time for personal work now that school isn&#8217;t taking up every minute of my life. I have a new game in the works (hopefully with a flash prototype coming soon), as well as some updates to <a href="http://pulsusgame.com">Pulsus</a>. I&#8217;d like to blog more consistently, and have a little backlog of things to get that started. Maybe I&#8217;ll even have some time to work on some generative works and some sounds. We&#8217;ll see what keeps my interest.</p>
<p>I&#8217;m excited to be staying in Baltimore and to get back to work after a lot of reshuffling and resettling.</p>
]]></content:encoded>
			<wfw:commentRss>http://anthonymattox.com/moving-on-from-mica/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress Processing Embed</title>
		<link>http://anthonymattox.com/wordpress-processing-embed</link>
		<comments>http://anthonymattox.com/wordpress-processing-embed#comments</comments>
		<pubDate>Mon, 29 Nov 2010 22:12:16 +0000</pubDate>
		<dc:creator>Anthony</dc:creator>
				<category><![CDATA[article]]></category>
		<category><![CDATA[embed]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[processing]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://anthonymattox.com/?p=2683</guid>
		<description><![CDATA[WordPress Processing Embed is a wp plugin to embed Processing applets into WordPress posts and pages. The plugin lets you embed applets directly into the page, or, display in the page or in a new window, when alternate content is clicked. If you have a WordPress site go try it out. Let me know if [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://wordpress.org/extend/plugins/wordpress-processing-embed/">WordPress Processing Embed</a> is a <a href="http://wordpress.org">wp</a> plugin to embed <a href="http://processing.org">Processing</a> applets into <a href="http://wordpress.org">WordPress</a> posts and pages. The plugin lets you embed applets directly into the page, or, display in the page or in a new window, when alternate content is clicked.</p>
<p>If you have a <a href="http://wordpress.org">WordPress</a> site <a href="http://wordpress.org/extend/plugins/wordpress-processing-embed/">go try it out</a>. <a href="http://anthonymattox.com/contact">Let me know</a> if you find any problems or have suggestions. This first release does not yet include support for libraries.</p>
<h3>Usage</h3>
<p>To use the plugin, upload a .jar file through the media uploader and insert the shortcode <code>&#91;processing file="yourapplet.jar"&#93;</code>. A default width, height, and embed method can be set in the admin panel and they can be overridden with parameters. Alternate content can be placed in a closing shortcode. For the &#8216;newwindow&#8217; and &#8216;onclick&#8217; methods, alternate content will be displayed and wrapped in an anchor tag.</p>
<p>A more complex example: <code>&#91;processing file="yourapplet.jar" width="500" height="300" method="onclick"&#93;Alternate Content&#91;/processing&#93;</code></p>
<p>When exporting your applet, &#8216;use multiple .jar files&#8217; should be checked in the processing preferences. The plugin already includes the <code>core.jar</code> file.</p>
<h3>Demo</h3>
<div><div class="processing_embed" id="snow_container"><p><a href="#" onclick="deployJava.addAppletTo('snow', 'http://anthonymattox.com/wp-content/uploads/2010/11/snow.jar', 450, 300, 'http://anthonymattox.com/wp-content/plugins/wordpress-processing-embed', 'snow_container'); return false;"><img src="http://anthonymattox.com/wp-content/uploads/2010/11/snow-launch.png" alt="" title="snow-launch" width="450" height="300" class="alignnone size-full wp-image-2702" style="margin:0;" /></a></p></div><small>A java applet that will launch onclick in the page. The applet will replace the image when it is launched.</small></div>
]]></content:encoded>
			<wfw:commentRss>http://anthonymattox.com/wordpress-processing-embed/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Creating a Polyphonic Synthesizer in Pure Data</title>
		<link>http://anthonymattox.com/creating-a-polyphonic-synthesizer-in-pure-data</link>
		<comments>http://anthonymattox.com/creating-a-polyphonic-synthesizer-in-pure-data#comments</comments>
		<pubDate>Sat, 13 Nov 2010 16:49:11 +0000</pubDate>
		<dc:creator>Anthony</dc:creator>
				<category><![CDATA[article]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[polyphonic]]></category>
		<category><![CDATA[pure data]]></category>
		<category><![CDATA[sound]]></category>
		<category><![CDATA[synthesizer]]></category>

		<guid isPermaLink="false">http://anthonymattox.com/?p=2631</guid>
		<description><![CDATA[I&#8217;ve been playing around with Pure Data for a while now, along with a few other pieces of audio software. The results of this can be heard in the audio for my recent flash game, Pulsus. Pure Data is a great application which allows you to control every detail building audio applications from very basic [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been playing around with <a href="http://puredata.info/">Pure Data</a> for a while now, along with a few other pieces of audio software. The results of this can be heard in the audio for my recent <a href="http://pulsusgame.com">flash game, Pulsus</a>.</p>
<p><a href="http://puredata.info/">Pure Data</a> is a great application which allows you to control every detail building audio applications from very basic components. Unfortunately, much of the program is very poorly documented, so I&#8217;d thought I&#8217;d share a few things I&#8217;ve managed to figure out.</p>
<p>Here&#8217;s a quick walkthrough to create a very basic midi controlled, polyphonic synthesizer in pure data. It doesn&#8217;t sound like much, but it&#8217;ll get things working.</p>
<h3>Generating a Tone</h3>
<p>This basic synthesizer will consist of two patches, one patch to generate a tone, and another which will read a midi signal and control a few instances of the tone generator.</p>
<div><img src="http://anthonymattox.com/wp-content/uploads/2010/11/Pure-Data-oscillator.png" alt="Oscillator for a Synthesizer in Pure Data" title="Pure Data Oscillator" width="402" height="387" class="alignnone size-full wp-image-2636" style="margin:0;" /><small>This is the oscillator patch which generates a tone from a midi message. The tone is created on the left side and the envelope (the change in volume over the course of a note) on the right.</small></div>
<p>The tone patch has an inlet at the top, which accepts a message containing a pitch/velocity pair, and an outlet at the bottom which sends out the audio signal generated. The <code>[unpack]</code> object splits the pitch and velocity. The pitch is sent to a series of objects on the left side which generate the tone. The velocity is sent to the right where the envelope will be generated.</p>
<p>The pitch, in the form of a midi note number, is converted to a frequency in Hertz which is then sent to an oscillator, generating an sine wave.</p>
<p>Two messages will be sent for each midi note, the first when the note begins and the second when the note ends. The &#8216;note off&#8217; message will be the same but the velocity will be 0. The velocity, how hard the note was hit, is usually used to set the volume of the note. The velocity is sent to a <code>[select]</code> object. If it is zero, the message is sent to release the note, otherwise to attack. Each of these send a message to a <code>[vline~]</code> object which sends a signal for the amplitude which either ramps up or down.</p>
<p>Finally, the tone is multiplied by the envelope and sent out the parent patch. When the note is hit, a message is also sent to the oscillator which resets the phase.</p>
<h3>MIDI and Polyphony</h3>
<p>Now that we have our oscillator we need to create a patch which will control a few instances of it. The patch will receive midi data from a hardware controller or from another piece of software. The midi settings will need to be configured for <a href="http://puredata.info">PD</a> to receive the data.</p>
<div><img src="http://anthonymattox.com/wp-content/uploads/2010/11/Pure-Data-polyphonic-synthesizer2.png.png" alt="A Simple Polyphonic Synthesizer Created in Pure Data" title="Pure Data Polyphonic Synthesizer 2" width="434" height="396" class="alignnone size-full wp-image-2649" style="margin:0" /><small>The PD patch which takes midi input and handles the voice allocation, controlling a number of oscillators.</small></div>
<p>At the top of our patch we have a <code>[notein]</code> object which reads midi from channel 1. <code>[notein]</code> will output pitch/velocity pairs. The <code>[poly]</code> object handles the allocation of different voices. When pitch/velocity pairs are sent to it it sends on the data with the addition of a voice number.</p>
<p>In order to play multiple notes at once, the messages will be routed to a number of different oscillators, each a different &#8216;voice&#8217;. When <code>[poly]</code> receives a note, it will give the number of the first available voice. When it gets a &#8216;note off&#8217; message (velocity of 0) it makes that voice available again so that that oscillator can play another note when it needs to.</p>
<p>Now we can route the processed messages to a number of instances of the &#8216;tone&#8217; patch. We do this by packing the messages into lists and using the <code>[route]</code> object which sorts them based on the first element in the message. Awesome. Finally we just add all the signals from the oscillators together and send them to the audio output. It first also multiplies the signal by a amplitude set by the slider so that we can adjust the volume of the synth.</p>
<h3>Ok, So What Now?</h3>
<p>Now that we have a simple little synth we should be able to get some sounds. A midi signal can come from a physical midi controller or from software. You can use a program, like <a href="http://www.ableton.com/">Ableton Live</a>, to create a composition and then send out midi. You can also create other pure data patches to generate midi. A patch could create generative melodies, act as a sequencer, or create midi from another input such as the keyboard. </p>
<p>The synth at this point just plays a sine wave for each note. It&#8217;s a start, but not thrilling. To create different timbres, the <code>[osc~]</code> object can be replaced with something to play <a href="http://en.flossmanuals.net/PureData/GeneratingWaveforms">different waveforms</a> and we could add modulators or a more complex envelope generator. On top of that we can run the audio signal through filters either in pure data or in other software. A bit of reverb will make it sound a little less flat.</p>
<p>If you have any suggestions post them in the comments. I&#8217;m certainly no expert, and I&#8217;d love to hear some other methods.</p>
]]></content:encoded>
			<wfw:commentRss>http://anthonymattox.com/creating-a-polyphonic-synthesizer-in-pure-data/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adobe Design Achievement Award</title>
		<link>http://anthonymattox.com/adobe-design-achievement-award</link>
		<comments>http://anthonymattox.com/adobe-design-achievement-award#comments</comments>
		<pubDate>Sat, 30 Oct 2010 17:15:53 +0000</pubDate>
		<dc:creator>Anthony</dc:creator>
				<category><![CDATA[article]]></category>
		<category><![CDATA[adaa]]></category>
		<category><![CDATA[adobe]]></category>
		<category><![CDATA[travel]]></category>

		<guid isPermaLink="false">http://anthonymattox.com/?p=2622</guid>
		<description><![CDATA[Last week I had the fantastic opportunity to attend the Adobe Design Achievement Awards. My flash game, Pulsus, won in the Non-Browser Based Design section of Interactive design. The List List was also a finalist in Browser-Based Design. The award also came with a copy of CS5 Master Collection, which I&#8217;m very excited to start [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://anthonymattox.com/wp-content/uploads/2010/10/adaa-trophy.jpg" alt="Adobe Design Achievement Award Trophy" title="Adobe Design Achievement Award Trophy" width="450" height="600" class="alignnone size-full wp-image-2623 topofpost" /></p>
<p>Last week I had the fantastic opportunity to attend the Adobe Design Achievement Awards. My flash game, <a href="http://pulsusgame.com">Pulsus</a>, won in the Non-Browser Based Design section of Interactive design. <a href="http://thelistlist.com">The List List</a> was also a finalist in Browser-Based Design. The award also came with a copy of CS5 Master Collection, which I&#8217;m very excited to start playing with. I&#8217;m a few versions behind and don&#8217;t have any of the fancy programs like After Effects.</p>
<p>All of the finalists were flown out to LA for the award ceremony and were given passes to Adobe MAX, a yearly conference where they show off their latest technologies and projects. By far the best part of the trip was meeting a bunch of great people, both <a href="http://www.adaagallery.com/">other students</a> in the competition and professional designers and developers.</p>
<p>So thanks Adobe. I hope to see you again next year in Taipei.</p>
]]></content:encoded>
			<wfw:commentRss>http://anthonymattox.com/adobe-design-achievement-award/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

