<?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>aKineticBlog</title>
	<atom:link href="http://akineticblog.com/index.php?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://akineticblog.com</link>
	<description>Creation... procrastination... - procreation?</description>
	<lastBuildDate>Wed, 12 Sep 2012 22:29:55 +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>A sunset time-lapse</title>
		<link>http://akineticblog.com/?p=573</link>
		<comments>http://akineticblog.com/?p=573#comments</comments>
		<pubDate>Wed, 12 Sep 2012 22:28:14 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[Images]]></category>
		<category><![CDATA[Photography]]></category>
		<category><![CDATA[Time-lapse]]></category>

		<guid isPermaLink="false">http://akineticblog.com/?p=573</guid>
		<description><![CDATA[I went on an old-school family holiday last week, and took the opportunity to capture some of the lovely Scottish scenery. It was Kirkcolm, in the Rhins of Galloway, and I shot a time-lapse of the sunset from the back deck. After some experimenting I settled on one shot every 5 seconds, left it on ]]></description>
			<content:encoded><![CDATA[<p>I went on an old-school family holiday last week, and took the opportunity to capture some of the lovely <strong>Scottish</strong> scenery. It was Kirkcolm, in the Rhins of Galloway, and I shot a time-lapse of the sunset from the back deck.</p>
<p><iframe src="http://player.vimeo.com/video/49303301?title=0&amp;byline=0&amp;portrait=0&amp;color=38c7ff" width="500" height="331" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe></p>
<p>After some experimenting I settled on one shot every 5 seconds, left it on manual and set it to initially overexpose quite a bit, to get the most out of the foreground, at the expense of the sky and with the hope of greater longevity as the light went.</p>
<p>I shot in raw so, with relief, I was able to recover a lot of the blown-out detail from the sky. I settled on a group of raw import settings that worked well for the first few images I looked at, then set them up to batch-process in Photoshop. When I went to sequence these in After Effects though, it left the latter end of the sunset too dark for too long, so I ended up deriving a new group of settings that brought the most out of the under-exposed end of the sequence. Finally I lined the two sequences up and faded the brighter version in gradually, as though the exposure had been adjusted manually during the capture.</p>
<p>The flickering specks you can see are (I&#8217;m told) swifts and some other small birds, who were nesting (and swooping maniacally) in and around the house. They are a little distracting but I haven&#8217;t yet had the heart to content-aware them out. Please sir, they&#8217;re only little.</p>
]]></content:encoded>
			<wfw:commentRss>http://akineticblog.com/?feed=rss2&#038;p=573</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Replacing the buttonMode hand cursor icon in FP 10.2+</title>
		<link>http://akineticblog.com/?p=544</link>
		<comments>http://akineticblog.com/?p=544#comments</comments>
		<pubDate>Fri, 06 Jul 2012 10:42:57 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Images]]></category>
		<category><![CDATA[10.2]]></category>
		<category><![CDATA[cats]]></category>
		<category><![CDATA[cursor]]></category>
		<category><![CDATA[mouse]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[snippet]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://akineticblog.com/?p=544</guid>
		<description><![CDATA[Thought I&#8217;d share a little snippet from a project I worked on a month or so back &#8211; it takes advantage of the Mouse.cursor property introduced in Flash Player 10.2. MouseCursor, as you may know, beats the ass of previous cursor replacement solutions because it modifies the OS pointer, and thus is not at the ]]></description>
			<content:encoded><![CDATA[<p>Thought I&#8217;d share a little snippet from a project I worked on a month or so back &#8211; it takes advantage of the Mouse.cursor property introduced in Flash Player 10.2. MouseCursor, as you may know, beats the ass of previous cursor replacement solutions because it modifies the OS pointer, and thus is not at the whim of slow stage framerates or the various other painful snags that come with faking it; hiding the system cursor and manually positioning a graphic in its place.</p>
<p>There&#8217;s a decent amount of documentation out there on how to use it, but my specific requirement was to replace the cursor only when mousing over buttons and other clickable items. I wanted it to show up wherever the hand cursor would normally appear, across a whole project.</p>
<p>This is the kind of behaviour I needed:</p>
<div class="mceTemp mceIEcenter">
<dl class="aligncenter" style="width: 400px;">
<dt class="wp-caption-dt"><a rel="shadowbox;height=400;width=550;options={flashParams:{bgcolor:'#121618',allowfullscreen:false}}" href="/fl/CursorDemo.swf"><img title="catswitch" src="/img/catlight.jpg" alt="catswitch" width="390" height="280" /></a></dt>
<div style="text-align: center;">Click to run the example. The buttons show a custom mouse-over cursor only when they&#8217;re enabled.<br/><br/></div>
</dl>
</div>
<p>Now, if you look at the Adobe docs on the topic, you can register a cursor by passing in a String constant and a MouseCursorData object like so:</p>
<pre class="brush: as3; title: ; notranslate">Mouse.registerCursor(&quot;PointerCursor&quot;, mouseCursorData);</pre>
<p>Additionally, you can spy a number of static String constants inside the MouseCursor class &#8211; such as IBEAM and HAND &#8211; which certainly made me wonder whether I could do something like the following:</p>
<pre class="brush: as3; title: ; notranslate">Mouse.registerCursor(MouseCursor.HAND, mouseCursorData);</pre>
<p>But as you may have guessed, this does not work as hoped; it&#8217;s not possible just to override the graphic used for the hand cursor.</p>
<p>So here&#8217;s my workaround for achieving this kind of behaviour, which I opt to keep inside a centralised class (the filthy singleton). I&#8217;ve set up a git repository for the full example, but here&#8217;s the crux (a few extra functions aren&#8217;t shown here):</p>
<pre class="brush: as3; title: ; notranslate">public function buttonMode_set(target:Sprite, buttonMode:Boolean):void {

	//If the dictionary hasn't been initialised, do so and set up the custom mouse cursor//
	if (! _buttonModeDictionary) {
		_buttonModeDictionary = new Dictionary();
		var pointerCursor = new MouseCursorData();
		pointerCursor.data = new &lt;BitmapData&gt;[new Cursor32Shadow()];
		pointerCursor.frameRate = 0;
		pointerCursor.hotSpot = new Point(3, 1);
		Mouse.registerCursor(&quot;PointerCursor&quot;, pointerCursor);
	}

	//Check whether the Sprite has already been registered for use//
	if (target in _buttonModeDictionary) {

		//Only add/remove listeners if the buttonMode state is actually changing//
		if (_buttonModeDictionary[target] != buttonMode) {
			_buttonModeDictionary[target] = buttonMode;
			if (buttonMode) {
				target.addEventListener(MouseEvent.ROLL_OVER, pointerCursor_show);
				target.addEventListener(MouseEvent.ROLL_OUT, pointerCursor_hide);
				mouseOver_check(target, true);
			} else {
				target.removeEventListener(MouseEvent.ROLL_OVER, pointerCursor_show);
				target.removeEventListener(MouseEvent.ROLL_OUT, pointerCursor_hide);
				mouseOver_check(target, false);
			}
		}

	//Only add the new entry if pseudo-buttonMode is being turned on//
	} else if (buttonMode) {

		_buttonModeDictionary[target] = true;
		target.addEventListener(MouseEvent.ROLL_OVER, pointerCursor_show);
		target.addEventListener(MouseEvent.ROLL_OUT, pointerCursor_hide);
		mouseOver_check(target, true);
	}
}</pre>
<p>And then it can be turned on and off for each object like this:</p>
<pre class="brush: as3; title: ; notranslate">buttonMode_set(button1, true);	//button1.buttonMode = true;
buttonMode_set(button2, false);	//button2.buttonMode = false;</pre>
<p>The full example can be downloaded from github here: <a href="https://github.com/hanenbro/CursorDemo">https://github.com/hanenbro/CursorDemo</a></p>
]]></content:encoded>
			<wfw:commentRss>http://akineticblog.com/?feed=rss2&#038;p=544</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>A poor man&#8217;s particle system</title>
		<link>http://akineticblog.com/?p=529</link>
		<comments>http://akineticblog.com/?p=529#comments</comments>
		<pubDate>Fri, 28 Oct 2011 22:52:54 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[3D]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[particles]]></category>
		<category><![CDATA[simulation]]></category>
		<category><![CDATA[webcam]]></category>

		<guid isPermaLink="false">http://akineticblog.com/?p=529</guid>
		<description><![CDATA[For a recent Flash job, I was required to add a particle system on top of an application already very CPU heavy. The project involved a large stage size, AR marker detection from a webcam feed, and a 3D-orientated plane displaying a running video, attached to the marker. This video plane then had to spew ]]></description>
			<content:encoded><![CDATA[<p>For a recent Flash job, I was required to add a particle system on top of an application already very CPU heavy. The project involved a large stage size, AR marker detection from a webcam feed, and a 3D-orientated plane displaying a running video, attached to the marker. This video plane then had to spew out various flavours of 3D particle at appropriate moments in the FLV.</p>
<p>The idea of plugging in a sexy particle engine like <a href="http://flintparticles.org/">Flint</a>, when the SWF was struggling even to maintain its target framerate of 25fps, made me uncomfortable. Bespoke seemed the only way to go, and hey! it worked out. Here&#8217;s what one of the particle types ended up resembling:</p>
<div class="mceTemp mceIEcenter">
<dl class="aligncenter" style="width: 400px;">
<dt class="wp-caption-dt"><a rel="shadowbox;height=480;width=640;options={flashParams:{bgcolor:'#253546',allowfullscreen:false}}" href="/fl/ParticleDemo.swf"><img title="Sparkle time" src="/img/particles.jpg" alt="Sparkle time" width="390" height="280" /></a></dt>
<div style="text-align: center;">Click to launch the demo. Moving the mouse left and right accelerates the rotation of the particle field, and holding down the left button barfs sparkles from the centre.<br/><br/></div>
</dl>
</div>
<p>(It&#8217;s worth mentioning that fewer particles than can be made in the above demo were needed for the project itself. Maxing out the version here gets my CPU usage up to around 40%, which would not have left enough room for the marker tracking and FLV playback.)</p>
<p>To briefly cover the tricks used here, I faked 3D z-positioning by scaling clips as a function of their bespoke &#8216;zPosition&#8217; value. The formula: <strong>focalLength / (focalLength + zPosition)</strong> gives the scale factor used to set the scaleX and scaleY properties of each MovieClip. The scaleX parameter was also adjusted to spoof motion blur, by overriding the x position property, and repeatedly comparing it to its value at the last update. The greater the change, the larger the scaleX multiplier, and the more stretched/blurred the particle would appear.</p>
<p>Rotation of the whole particle field was done by avoiding setting the x or z properties directly, depending instead on &#8216;radius&#8217; and &#8216;rotational offset&#8217; values. All the particles reside inside an imagined cylinder (the particle field), with its central spindle aligned with the y-axis. Each particle has its x and z location calculated on the basis of this rotation and distance from the central axis, as they move in their orbits. Channelling Mr McCallum, my secondary school maths teacher, the formulae to do this kind of positioning are, for the x axis: <strong>cos(angle) * radius</strong>; and for the z axis: <strong>sin(angle) * radius</strong>. (These can be used instead with the x and y properties to show rotation around a flat circle as opposed to the cylinder.)</p>
<p>In addition to rotary motion, the particles were required to &#8216;wander&#8217; of their own accord. To achieve this, a large bitmap of Perlin noise is generated at the beginning of the simulation, with a reference to it passed to each particle instance. Going from pixel to pixel each frame, the RGB value is sampled and used to increment the y-velocity and radius-velocity of each particle. Over time, the Perlin noise is traversed completely, resulting in a wide range of even motion. Each particle begins sampling from a randomised row/column too, so that the movement is staggered.</p>
<div class="mceTemp mceIEcenter">
<dl class="aligncenter" style="width: 400px;">
<dt class="wp-caption-dt"><img title="Thanks Ken Perlin!" src="/img/perlin.jpg" alt="Thanks Ken Perlin!" width="390" height="280" /></dt>
<div style="text-align: center;">Setting the <a href="http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/BitmapData.html?filter_flash=cs5&#038;filter_flashplayer=10.2&#038;filter_air=2.6#perlinNoise()">Perlin noise generation</a> to tile allows the bitmap to be traversed from side to side and top to bottom without any sudden changes in value.<br/><br/></div>
</dl>
</div>
<p>With all said and done, there may indeed have been a package out there that was equally lightweight and flexible enough for the nuances of the project. But, hard deadlines being as they are, it sometimes pays just to go from the ground up, omitting any chaff on the way &#8211; rather than hunt for elusive wheat through sprawling, multifaceted libraries.</p>
<p>If the source code happens to be of use to anyone I&#8217;d be very happy to clean it up and post it here. Until then&#8230; indolence wins out. Sorry!</p>
]]></content:encoded>
			<wfw:commentRss>http://akineticblog.com/?feed=rss2&#038;p=529</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>A Trip to the Aquarium</title>
		<link>http://akineticblog.com/?p=510</link>
		<comments>http://akineticblog.com/?p=510#comments</comments>
		<pubDate>Mon, 18 Jul 2011 16:55:48 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[Images]]></category>
		<category><![CDATA[Photography]]></category>

		<guid isPermaLink="false">http://akineticblog.com/?p=510</guid>
		<description><![CDATA[Before leaving Bristol a few weeks ago, lovely Kaila-love and I took a trip to the aquarium, and here&#8217;s what it looked like]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">Before leaving Bristol a few weeks ago, lovely Kaila-love and I took a trip to the aquarium, and here&#8217;s what it looked like:</p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP07692.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-477" title="IMGP0893" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP07692-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP07731.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-476" title="IMGP0889" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP07731-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP07751.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-477" title="IMGP0893" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP07751-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP07811.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-476" title="IMGP0889" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP07811-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP07821.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-477" title="IMGP0893" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP07821-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP07841.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-476" title="IMGP0889" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP07841-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP07981.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-477" title="IMGP0893" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP07981-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08011.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-476" title="IMGP0889" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08011-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08041.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-477" title="IMGP0893" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08041-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08141.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-476" title="IMGP0889" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08141-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08221.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-477" title="IMGP0893" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08221-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08401.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-476" title="IMGP0889" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08401-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08491.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-477" title="IMGP0893" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08491-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08531.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-476" title="IMGP0889" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08531-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08551.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-477" title="IMGP0893" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08551-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08591.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-477" title="IMGP0893" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08591-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08611.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-476" title="IMGP0889" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08611-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08641.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-477" title="IMGP0893" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08641-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08681.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-476" title="IMGP0889" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08681-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08741.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-477" title="IMGP0893" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08741-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08761.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-476" title="IMGP0889" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08761-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08881.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-477" title="IMGP0893" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08881-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;"><a href="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08931.jpg" rel="shadowbox[sbpost-510];player=img;"><img class="size-medium wp-image-477" title="IMGP0893" src="http://akineticblog.com/wp-content/uploads/2011/06/IMGP08931-300x199.jpg" alt="" width="300" height="199" align="aligncenter" /></a></p>
<p style="text-align: center;">
]]></content:encoded>
			<wfw:commentRss>http://akineticblog.com/?feed=rss2&#038;p=510</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dinoglyphs</title>
		<link>http://akineticblog.com/?p=409</link>
		<comments>http://akineticblog.com/?p=409#comments</comments>
		<pubDate>Fri, 15 Apr 2011 23:47:48 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[3D]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[anaglyph]]></category>
		<category><![CDATA[dinosaurs]]></category>
		<category><![CDATA[John Hammond]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[spinosaurus]]></category>
		<category><![CDATA[Thought Den]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://akineticblog.com/?p=409</guid>
		<description><![CDATA[Been feeling at all out of touch lately? Wondered what the next big thing&#8217;s going to be? You came to the right blog post friend, because I&#8217;ll tell you what it is for free: ANAGLYPHS And what would be the perfect companion to this timely tech? Extinct animals. Namely: DINOSAURS Over the past few weeks ]]></description>
			<content:encoded><![CDATA[<p>Been feeling at all out of touch lately? Wondered what the next big thing&#8217;s going to be? You came to the right blog post friend, because I&#8217;ll tell you what it is for free:</p>
<p style="text-align: center;">
<div class="mceTemp mceIEcenter">
<dl class="wp-caption aligncenter" style="width: 400px;">
<dt class="wp-caption-dt"><img title="ANAGLYPHS" src="/img/anaglyph/01glasses.jpg" alt="ANAGLYPHS" width="390" height="280" /></dt>
<h1 style="text-align: center;">ANAGLYPHS</h1>
</dl>
</div>
<p>And what would be the perfect companion to this timely tech? Extinct animals. Namely:</p>
<div class="mceTemp mceIEcenter">
<dl class="wp-caption aligncenter" style="width: 400px;">
<dt class="wp-caption-dt"><img title="DINOSAURS" src="/img/anaglyph/02extinct.jpg" alt="DINOSAURS" width="390" height="280" /></dt>
<h1 style="text-align: center;">DINOSAURS</h1>
</dl>
</div>
<p>Over the past few weeks at work, I got the chance to develop an educational Papervision3D/FLARToolKit application for the the BBC&#8217;s Learning Development site. I wrote up some nerdy/whiney information on the process <a title="TD blog post" href="http://www.thoughtden.co.uk/blog/2011/03/the-spinarsaurus-challenge-ar-tech-wizardry-for-the-bbc/">here</a>, and the page itself can be found at the picture-link below.</p>
<div class="mceTemp mceIEcenter">
<dl class="aligncenter" style="width: 400px;">
<dt class="wp-caption-dt"><a href="http://www.bbc.co.uk/learningdevelopment/spino/"><img title="SpinARsaurus Challenge" src="/img/anaglyph/03bbc.jpg" alt="SpinARsaurus Challenge" width="390" height="280" /></a></dt>
</dl>
</div>
<p>Moving images containing terrible lizards are all very well; Steven Spielberg gave us those in 1993 &#8211; more than fifty years ago! But what that documentary promised to be the simple matter of drilling into amber and injecting mosquito blood into a frog, still hasn&#8217;t yielded any dino fun parks. What gives?</p>
<p>In order to fill this void (over the next couple of months, before one of the parks is complete and we&#8217;re busy petting T-rexes), I&#8217;ve made a dinosaur that <em>looks</em> so real you could touch it.</p>
<div class="mceTemp mceIEcenter">
<dl class="aligncenter" style="width: 400px;">
<dt class="wp-caption-dt"><a rel="shadowbox;height=600;width=920;options={flashParams:{bgcolor:'#CC6699',allowfullscreen:false}}" href="/fl/dino/Preloader.swf"><img title="Dinoglyph" src="/img/anaglyph/04threedee.jpg" alt="Dinoglyph" width="390" height="280" /></a></dt>
<div style="text-align: center;">It will take a minute or two to load up, so please be patient! (You can&#8217;t rush <em>virtual reality</em>.) Moving the mouse around alters the spin speed and direction, and zooms in and out.<br/><br/></div>
</dl>
</div>
<p>For the demo, I loaded in a second skeleton model, iterated over the texture files and ColorTransform-ed the red / green+blue out of them, respectively, then set their BlendModes to DIFFERENCE. After that, I moved the red copy a little left, the blue copy a little right, and applied all other movement relative to those locations.</p>
<p>The eventual colours work out well to be mutually invisible in the corresponding panes of the paper glasses that were bundled with the copy of Ben 10 Magazine I bought in shame. (FYI, decent journalism, but the word searches were MUCH too difficult for the recommended age bracket.) More sophisticated glasses will probably result in uneven colouring.</p>
<div class="mceTemp mceIEcenter">
<dl class="wp-caption aligncenter" style="width: 400px;">
<dt class="wp-caption-dt"><a href="/img/anaglyph/05adam_lg.jpg" rel="shadowbox[sbpost-409];player=img;"><img title="FUTURE" src="/img/anaglyph/05adam.jpg" alt="FUTURE" width="390" height="280" /></a></dt>
</dl>
</div>
<h6><span style="font-weight: normal;">And you wont look as cool.</span></h6>
]]></content:encoded>
			<wfw:commentRss>http://akineticblog.com/?feed=rss2&#038;p=409</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>New Things</title>
		<link>http://akineticblog.com/?p=297</link>
		<comments>http://akineticblog.com/?p=297#comments</comments>
		<pubDate>Sun, 27 Jun 2010 19:37:43 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Images]]></category>
		<category><![CDATA[Meta]]></category>
		<category><![CDATA[Photography]]></category>
		<category><![CDATA[Bristol]]></category>
		<category><![CDATA[cats]]></category>
		<category><![CDATA[Clock]]></category>
		<category><![CDATA[Thought Den]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://akineticblog.com/?p=297</guid>
		<description><![CDATA[Oh&#8230; hi! Originally, my opening gag for this post was going to be something along the lines of: &#8216;Huh. This thing still works&#8230;?&#8217; &#8211; however, the joke is firmly on me since the &#8216;kinetype.com&#8217; domain has just reached its year anniversary, and without an up-to-date card on file to renew my ownership, expired unceremoniously. So, ]]></description>
			<content:encoded><![CDATA[<p>Oh&#8230; hi! Originally, my opening gag for this post was going to be something along the lines of: &#8216;Huh. This thing still works&#8230;?&#8217; &#8211; however, the joke is firmly on me since the &#8216;kinetype.com&#8217; domain has just reached its year anniversary, and without an up-to-date card on file to renew my ownership, expired unceremoniously. So, no; that thing does not still work. (If you <a href="http://kinetype.com/">go there now</a> you&#8217;ll find a charming ad-laden placeholder and an invitation to step in and claim that red-hot goldmine. Feel free, entrepreneurial reader, to wreak havoc with my brand identity.) Though the option&#8217;s still open to renew, I realised that this inventory should now be at the center &#8211; rather than the kinetic typography generator to which this blog was first tacked-on. <i>Et cello</i>&#8230; a new domain!</p>
<p>So, post shake-up, said generator can be found at <a href="http://akt.akineticblog.com/">akt.akineticblog.com</a>, the old Hope Park Square back-up is now at <a href="http://hps.akineticblog.com/">hps.akineticblog.com</a>, while this guy is at the www subdomain, or just plain <a href="http://akineticblog.com/">akineticblog.com</a>. Why do I get the feeling it wasn&#8217;t many posts that ago I was just explaining the last domain set-up&#8230;? Enough meta-posting; content!:</p>
<p>I am employed as a Flash developer now. Sweet! This has exactly two benefits:<br />
1) Career finally on track to Coolsville (definitely in an outer borough already), and<br />
2) People asking what I do, unaware of the platform, just think I&#8217;m a developer, but a particularly fancy (and arrogant) one. Score.</p>
<p>I work for the wonderful Thought Den <span style="color:#FF0000"><3</span> &#8211; check them out, yo!: <a href="http://www.thoughtden.co.uk/">http://www.thoughtden.co.uk/</a></p>
<div class="wp-caption aligncenter" style="width: 400px"><a href="http://www.thoughtden.co.uk/"><img class="  " src="/img/den.png" title="http://www.thoughtden.co.uk/" width="390 height="280" /></a><p class="wp-caption-text"><b>Thought Den, or: Ed('s) Thong Hut</b></p></div>
<p>I&#8217;ve been made to feel more than at home by Ben and Dan, awesome director-fellows and Kings of Thought Den. They even made a hugely awkward and dorky (<i>completely</i> unfair and impromptu) film of me screwing around with an iPhone-OSC-Flash thing I put together, partly based on the learnings of my previous post on OSC-to-Flash music visualisation. If you can stomach it, <a href="http://www.thoughtden.co.uk/blog/2010/05/new-flasher-new-geek-club-new-den/">read and watch here</a>.</p>
<p>This job move has also meant a spatial move; 302 miles south (woo!) and 70 to the east (boo!). Let&#8217;s see, that puts me in &#8230; oh, Bristol! Neat! I couldn&#8217;t find my camera while I was packing to move (four hours before my flight&#8230;), so forgive the sub-par photography, but the Bristol adventure has so far resembled this:</p>
<div class="wp-caption aligncenter" style="width: 400px"><a href="/img/bristol/uhohmorning.JPG" rel="shadowbox[sbpost-297];player=img;"><img class=" " src="/img/bristol/uhohmorningSM.JPG" alt="" title="uhohmorning.jpg" width="390" height="280" /></a><p class="wp-caption-text"><b>Not Bristol but Troon, in the bleary small hours, packing unfinished - 'Time I took a picture!'</b></p></div>
<div class="wp-caption aligncenter" style="width: 400px"><a href="/img/bristol/uhohtakeoff.JPG" rel="shadowbox[sbpost-297];player=img;"><img class=" " src="/img/bristol/uhohtakeoffSM.JPG" alt="" title="uhohtakeoff.jpg" width="390" height="280" /></a><p class="wp-caption-text"><b>At the airport, in a PA deadzone, obliviously writing an email and missing the boarding call (but only a little bit)</b></p></div>
<div class="wp-caption aligncenter" style="width: 400px"><a href="/img/bristol/icanhashouseplz.JPG" rel="shadowbox[sbpost-297];player=img;"><img class=" " src="/img/bristol/icanhashouseplzSM.JPG" alt="" title="icanhashouseplz.jpg" width="390" height="280" /></a><p class="wp-caption-text"><b>I think I might live along here one day.</b></p></div>
<div class="wp-caption aligncenter" style="width: 400px"><a href="/img/bristol/philistine.JPG" rel="shadowbox[sbpost-297];player=img;"><img class=" " src="/img/bristol/philistineSM.JPG" alt="" title="philistine.jpg" width="390" height="280" /></a><p class="wp-caption-text"><b>Some, uh- scaffolding. It was very, very blue.</b></p></div>
<div class="wp-caption aligncenter" style="width: 400px"><a href="/img/bristol/likethatpartyundergroundfromthematrix.JPG" rel="shadowbox[sbpost-297];player=img;"><img class=" " src="/img/bristol/likethatpartyundergroundfromthematrixSM.JPG" alt="" title="likethatpartyundergroundfromthematrix.jpg" width="390" height="280" /></a><p class="wp-caption-text"><b>Convinced I'd dreamt this, yet there the picture was, in my phone. My clothes and hair were also filthy, and I found a bloodied half-brick, bundled up in my jacket.</b></p></div>
<div class="wp-caption aligncenter" style="width: 400px"><a href="/img/bristol/structurallysound.JPG" rel="shadowbox[sbpost-297];player=img;"><img class=" " src="/img/bristol/structurallysoundSM.JPG" alt="" title="structurallysound.jpg" width="390" height="280" /></a><p class="wp-caption-text"><b>What lovely colour sense the engineers and forsakers of this bridge had!</b></p></div>
<div class="wp-caption aligncenter" style="width: 400px"><a href="/img/bristol/myluckyday.JPG" rel="shadowbox[sbpost-297];player=img;"><img class=" " src="/img/bristol/myluckydaySM.JPG" alt="" title="myluckyday.jpg" width="390" height="280" /></a><p class="wp-caption-text"><b>Ah, lucky cats: quintessential Bristol</b></p></div>
<div class="wp-caption aligncenter" style="width: 400px"><a href="/img/bristol/itswhatsinsidethatcounts.JPG" rel="shadowbox[sbpost-297];player=img;"><img class=" " src="/img/bristol/itswhatsinsidethatcountsSM.JPG" alt="" title="itswhatsinsidethatcounts.jpg" width="390" height="280" /></a><p class="wp-caption-text"><b>An economy religion</b></p></div>
<div class="wp-caption aligncenter" style="width: 400px"><a href="/img/bristol/seafaringbird.JPG" rel="shadowbox[sbpost-297];player=img;"><img class=" " src="/img/bristol/seafaringbirdSM.JPG" alt="" title="seafaringbird.jpg" width="390" height="280" /></a><p class="wp-caption-text"><b>I might've known it would be a seagull, captaining the shellfish-restaurant-boat</b></p></div>
<div class="wp-caption aligncenter" style="width: 400px"><a href="/img/bristol/inspiralmonkeys.JPG" rel="shadowbox[sbpost-297];player=img;"><img class=" " src="/img/bristol/inspiralmonkeysSM.JPG" alt="" title="inspiralmonkeys.jpg" width="390" height="280" /></a><p class="wp-caption-text"><b>And if thou gaze long into a spiralmonkeyface, the spiralmonkeyface will gaze also into thee.</b></p></div>
<div class="wp-caption aligncenter" style="width: 400px"><a href="/img/bristol/cattiedral.JPG" rel="shadowbox[sbpost-297];player=img;"><img class=" " src="/img/bristol/cattiedralSM.JPG" alt="" title="cattiedral.jpg" width="390" height="280" /></a><p class="wp-caption-text"><b>A more opulent, cobwebbed religion</b></p></div>
<div class="wp-caption aligncenter" style="width: 400px"><a href="/img/bristol/threedeerendering.JPG" rel="shadowbox[sbpost-297];player=img;"><img class=" " src="/img/bristol/threedeerenderingSM.JPG" alt="" title="threedeerendering.jpg" width="390" height="280" /></a><p class="wp-caption-text"><b>This isn't actually a photograph but a screencap from when I was wandering through a VR simulation from the 90s. Shortly after, green teapots whizzed past me to collide with a man made entirely of chrome. The shattered pieces then morphed into the word 'cool!' in Comic Sans. Terrifying.</b></p></div>
<div class="wp-caption aligncenter" style="width: 400px"><a href="/img/bristol/badkitty.JPG" rel="shadowbox[sbpost-297];player=img;"><img class=" " src="/img/bristol/badkittySM.JPG" alt="" title="badkitty.jpg" width="390" height="280" /></a><p class="wp-caption-text"><b>No, naughty cat! Stop it! This isn't your house. But help yourself to Crazy Landlady's frozen food (somehow kept outside during summer...).</b></p></div>
<div class="wp-caption aligncenter" style="width: 400px"><a href="/img/bristol/howeuropean.JPG" rel="shadowbox[sbpost-297];player=img;"><img class=" " src="/img/bristol/howeuropeanSM.JPG" alt="" title="howeuropean.jpg" width="390" height="280" /></a><p class="wp-caption-text"><b><i>*sigh*</i> Doesn't it just make you want to pedal an old bicycle, go buy some bread maybe?</b></p></div><br />
<br/></p>
<p>In other Flash-activity / Flactivity, here is a little &#8230;Flupdate: I made a desktop clock (a deskclock, if you will) gadget, deploying through Air. It runs like this:</p>
<p><div class="wp-caption aligncenter" style="width: 400px"><a rel="shadowbox;height=300;width=400;options={flashParams:{bgcolor:'#000000',allowfullscreen:false}}" href="/fl/DeskClock.swf"><img class="  " src="/img/clock.png" title="Deskclock" width="390 height="280" /></a><p class="wp-caption-text"><b>Note: displayed time correct only occasionally; click for greater accuracy</b></p></div>
<p>It needs polishing up and some customisation options, since it&#8217;s hardcoded to suit my desktop (<a href="/img/bristol/clockocat.JPG" rel="shadowbox[sbpost-297];player=img;">above the cat</a>), so I&#8217;ll add a nice menu and post it here with the source and everything &#8211; like a real community-oriented developer! ALSO: The mouse-position wobble thing was a late and non-final addition. The new Flash Player 10.1 and Air 2 runtimes yielded some bizarre corruption, with Sprites seemingly masking-out each other in places they shouldn&#8217;t, and at irregular intervals. Bug report en route &#8211; but for now I&#8217;m having to update <i>all</i> TextFields each second, and ensure the clock is redrawn every frame (not the sveltest of overheads), so I decided to do at least something with the spent processor time, useless as it may be.</p>
<p>Pledge: next update in less than a month.</p>
]]></content:encoded>
			<wfw:commentRss>http://akineticblog.com/?feed=rss2&#038;p=297</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>MIDI-driven Flash: Synaesthesia for Everyone!</title>
		<link>http://akineticblog.com/?p=257</link>
		<comments>http://akineticblog.com/?p=257#comments</comments>
		<pubDate>Tue, 13 Apr 2010 22:11:50 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[3D]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Electronic]]></category>
		<category><![CDATA[Music]]></category>
		<category><![CDATA[Ableton Live]]></category>
		<category><![CDATA[Bill Cosby]]></category>
		<category><![CDATA[flosc]]></category>
		<category><![CDATA[generative art]]></category>
		<category><![CDATA[MIDI]]></category>
		<category><![CDATA[OSC]]></category>
		<category><![CDATA[OSCConnector]]></category>
		<category><![CDATA[OSCGlue]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[visualisation]]></category>
		<category><![CDATA[William Shatner]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://blog.kinetype.com/?p=257</guid>
		<description><![CDATA[Typical music visualisers, as found in desktop media players, have limited means to analyse the music played through them. Audio data from a mixed-down track is a blend of waveforms, normally from many sources. Spectral analysis allows amplitude variation at disparate frequencies to be detected and graphed discretely, which can assist in beat detection and ]]></description>
			<content:encoded><![CDATA[<p>Typical music visualisers, as found in desktop media players, have limited means to analyse the music played through them. Audio data from a mixed-down track is a blend of waveforms, normally from many sources. Spectral analysis allows amplitude variation at disparate frequencies to be detected and graphed discretely, which can assist in beat detection and tempo analysis. But due to the <i>noisiness</i> (&#8230;) of this data, huge variation in compositional arrangements and the need for realtime processing, the majority of visualisers have limited reactivity and focus on producing partially-randomised, generative animation that would be pretty even if running on white noise.</p>
<div class="wp-caption aligncenter" style="width: 380px"><img class="  " src="/img/syn0.png" title="GET OUT" width="370" height="233" /><p class="wp-caption-text"><b>No.</b></p></div>
<p>But that&#8217;s all for raw audio. Samplers and virtual instruments (rendering MIDI data) have ever-increasing prominence in music creation and live performance &#8211; and greatly outclass standard hardware MIDI synthesizers, with which the typical notion of dorky, low-quality MIDI playback is inexorably tied. Compared to an audio stream, &#8216;message&#8217;-based music protocols describe <i>events</i> &#8211; normally pitch and velocity/volume information about notes triggering on and off &#8211; and nothing about the timbre of the sound, allowing sonic quality (for instance, the performing instrument) to be altered at any point.</p>
<p>Visualising musical data in <i>this</i> form removes all uncertainty around the timing and nature of note events (along with the overhead of detecting such details), accommodating far tighter correspondence between the audio and visual elements than is possible with conventional visualisers.</p>
<div class="wp-caption aligncenter" style="width: 380px"><img class="  " src="/img/syn0p5.png" title="They're ready for MIDI. Are you?" width="370" height="233" /><p class="wp-caption-text"><b>The Future</b></p></div>
<p>And none of this is new &#8211; VJs have been leveraging MIDI precision for years, and the field is still growing &#8211; but routing note data into Flash is new to me, and something I&#8217;d wanted to do for years, provoked by rhythmic music that carried a strong sense of motion, or was otherwise very visual. (Lookin&#8217; at you guys, <a href="http://www.youtube.com/watch?v=pxdJfFnEf0E" rel="nobox">MSTRKRFT</a> and <a href="http://www.youtube.com/watch?v=upbKHWeFcvQ" rel="nobox">Susumu Yokota</a> <b><3</b> &#8211; among many others.)</p>
<p>There are several possible starting points for running MIDI into Flash, but none especially mature (at least on Windows; different options are available for OS X). The primary issue is that the Flash runtime has never interfaced with environment-level MIDI APIs, which is pretty much in-keeping with conventional use of the platform. Various workarounds are possible, and having read around a lot I settled on the following:</p>
<ul>
<li>Translate the MIDI data into <a href= "http://en.wikipedia.org/wiki/Open_Sound_Control">OSC</a> (a newer protocol and likely eventual successor to MIDI, designed to run through the network transport layer), with the VST plugin, <a href="http://vvvv.org/tiki-index.php?page=OSCGlue">OSCGlue</a>, created by Sebastian Oschatz.</li>
<li>Receive the OSC packets with the Java <a href="http://www.benchun.net/flosc/">flosc</a> server, created by Benjamin Chun, and retransmit them over TCP (OSC data is normally sent over UDP, which Flash does not support).</li>
<li>Receive the shiny new TCP-delivered OSC packets with the <a href="http://code.google.com/p/flosc/">OSCConnection classes</a>, an XMLConnection extension written by Adam Robertson and revised by Ignacio Delgado.<br />
(Worth mentioning: the updated flosc server (v2.0.3) given at the Google Code link above didn&#8217;t work for me, but I had no problems with the original on Ben Chun&#8217;s site (v0.3.1).)</li>
</ul>
<p>Here is a demo of it running, routing percussive hits from Ableton Live:</p>
<p style="text-align: center;"><a rel="shadowbox;width=640;height=480" href="http://vimeo.com/moogaloop.swf?clip_id=10720881&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=79c6fc&amp;fullscreen=1"><img title="Click for vidya (embedded)" src="/img/syn1.png" alt="" width="370" height="230" /></a></p>
<p>The visualisation method (best referred to, generously, as a &#8216;sketch&#8217; for now), comprises an array of &#8216;particles&#8217;, distributed in 3D space, accelerating and rotating in time with note-on messages. On snare hits, the background gradient is also switched-out for another. The particles themselves comprise a few other graphical experiments: all symbols are a singular colour, but appear different due to variations in their layer BlendMode; I also created a sliding shutter-mask for the otherwise circular symbols in the Flash Pro IDE before embedding them; and I attempted a depth-of-field blur effect by increasing filter strength with distance from the camera &#8211; but it&#8217;s all a little abstract for that to be very applicable.</p>
<p>You can play with the visualiser &#8216;offline&#8217;, using keypresses: arrow keys (or WASD for the homicidally inclined) to move the particles; spacebar to swap the background. (Note: you&#8217;ll probably have to click into the player first.)</p>
<p style="text-align: center;"><a rel="shadowbox;height=400;width=600;options={flashParams:{bgcolor:'#000000',allowfullscreen:false}}" href="/fl/SynAS3sia.swf"><img title="Click for ...something (then click again)" src="/img/syn2.png" alt="" width="370" height="230" /></a></p>
<p>Some disclaimers: most of the work outside of Flash was that of the developers cited above; I don&#8217;t mean to take credit. This write-up is mostly to aid visitors with the same intentions, riding in on the Google express, since no other documented method I came across suited my needs and/or worked.<br />
And, secondly, the visualiser itself is intended primarily as a tech demo and precursor to a more complete, aesthetic (&#8230;synaesthetic?) piece. You&#8217;ll see &#8211; it&#8217;ll be just like having a real mental disorder.</p>
]]></content:encoded>
			<wfw:commentRss>http://akineticblog.com/?feed=rss2&#038;p=257</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Rain simulation</title>
		<link>http://akineticblog.com/?p=223</link>
		<comments>http://akineticblog.com/?p=223#comments</comments>
		<pubDate>Sat, 30 Jan 2010 18:00:45 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[particle motion]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[rain]]></category>
		<category><![CDATA[simulation]]></category>

		<guid isPermaLink="false">http://blog.kinetype.com/?p=223</guid>
		<description><![CDATA[As a generative animation exercise (and also just because, um, rain is nice-?), I decided to code me up some good ol&#8217; precipitation. Considerations included: degree of realism, adaptability and performance. Specifically, animating a single layer of tear-shaped drops falling uniformly in perfectly straight lines is relatively easy to do, and certainly has its place ]]></description>
			<content:encoded><![CDATA[<p>As a generative animation exercise (and also just because, um, rain is nice-?), I decided to code me up some good ol&#8217; precipitation. Considerations included: degree of realism, adaptability and performance. Specifically, animating a single layer of tear-shaped drops falling uniformly in perfectly straight lines is relatively easy to do, and certainly has its place within the right art style. On the other hand, ultra-realism would entail thousands of varied and varying particles, deeply distributed in 3D space – something that would better suit pre-rendering than realtime animation, or at the very least, something other than Flash. But that would be no fun at all. I opted for a low-ish number of convincing enough, but inaccurately shaped, particles (apparently raindrops are actually round, mushroom-top blobs – who knew?!), with fairly realistic motion and three distinct layers for the parallactic goodness. I tried to keep everything as configurable as possible, so fall speed, wind strength, blustery-ness, particle graphic, drop size variation and viewport size can be adjusted easily. Reuse or lose! – as they say. Well, they ought to start saying that.<br />
On with the rain!:</p>
<p style="text-align: center;"><a rel="shadowbox;height=450;width=600;options={flashParams:{bgcolor:'#000000',allowfullscreen:false}}" href="/fl/RainFull.swf"><img title="Click for rain!" src="/img/rain1.png" alt="" width="370" height="230" /></a></p>
<p>You may notice that in the front and backmost layers, the drops are a little blurred. I wanted to give a narrow depth of field effect, and had initially applied a BlurFilter to their containing sprites, but that hit performance hard &#8211; so I drew a separate drop symbol for their layers, softening the perimeter with a radial gradient down to transparent, which is just as cheap performance-wise as a solid drop.</p>
<p>Thinking a little more about the worth of such an effect, I realised that I would likely want the rain to interact with whatever other objects might be in the scene. And so I added an umbrella:</p>
<p style="text-align: center;"><a rel="shadowbox;height=450;width=600;options={flashParams:{bgcolor:'#000000',allowfullscreen:false}}" href="/fl/RainUmbrella.swf"><img title="Click for more manageable rain!" src="/img/rain2.png" alt="" width="370" height="230" /></a></p>
<p>It didn&#8217;t make much sense for the umbrella to stop drops across all layers, but the effect wasn&#8217;t very noticeable with so many other drops falling past it, so I removed them for this demo. I also added some physics-y hinged swinging based on the umbrella&#8217;s sideways movement. A splash animation plays at the exact intersecting point of drop and canopy &#8211; but I only later realised that, since around 75 drops make contact every second, I could easily have randomised the locations of the splashes and simplified the collision detection. Still! &#8211; honesty is the best policy, and <a rel="shadowbox;height=450;width=600;options={flashParams:{bgcolor:'#000000',allowfullscreen:false}}" href="/fl/RainLight.swf">when it&#8217;s only drizzling</a>, accuracy of the contact point is more relevant.</p>
<p>So now I have almost everything I need for my &#8216;KEEP THE LOST KITTIES DRY&#8217; minigame. No need to thank me just yet, world.</p>
<p>I drew the visual assets in the Flash CS3 IDE, compiled my classes in the wonderfully lightweight <a href="http://www.flashdevelop.org/">FlashDevelop</a>, and animated the drops using <a href="http://code.google.com/p/tweener/">Tweener</a>. That&#8217;s all!</p>
]]></content:encoded>
			<wfw:commentRss>http://akineticblog.com/?feed=rss2&#038;p=223</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Winter observations</title>
		<link>http://akineticblog.com/?p=169</link>
		<comments>http://akineticblog.com/?p=169#comments</comments>
		<pubDate>Tue, 05 Jan 2010 15:48:43 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[Images]]></category>
		<category><![CDATA[Photography]]></category>
		<category><![CDATA[B&W]]></category>
		<category><![CDATA[f/1.2]]></category>
		<category><![CDATA[film]]></category>
		<category><![CDATA[Glasgow]]></category>
		<category><![CDATA[labradors]]></category>
		<category><![CDATA[snow]]></category>

		<guid isPermaLink="false">http://blog.kinetype.com/?p=169</guid>
		<description><![CDATA[The following is from a roll of film I had developed just before Christmas, with pictures shot in November and December, on location in Glasgow and Troon. I used a Ricoh KR-10 camera with 35mm B&#38;W film (ISO 400) and a dreamy Pentax Asahi SMC lens borrowed from my father with a heroic f-number of ]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">The following is from a roll of film I had developed just before Christmas, with pictures shot in November and December, on location in Glasgow and Troon. I used a Ricoh KR-10 camera with 35mm B&amp;W film (ISO 400) and a dreamy Pentax Asahi SMC lens borrowed from my father with a heroic f-number of 1:1.2 / 55mm.</p>
<div class="wp-caption aligncenter" style="width: 380px"><a href="/img/park.jpg" rel="shadowbox[sbpost-169];player=img;"><img class=" " src="/img/parksm.png" alt="" width="370" height="230" /></a><p class="wp-caption-text">A grey Glasgow Green</p></div>
<div class="wp-caption aligncenter" style="width: 380px"><a href="/img/goose2.jpg" rel="shadowbox[sbpost-169];player=img;"><img class=" " src="/img/goose2sm.png" alt="" width="370" height="230" /></a><p class="wp-caption-text">Goose Jail: this fella&#39;s doing time for honking after 11pm, but he&#39;s in with the arm-breakers all the same. I slipped him some cigs; he&#39;ll be OK.</p></div>
<div class="wp-caption aligncenter" style="width: 380px"><a href="/img/factory.jpg" rel="shadowbox[sbpost-169];player=img;"><img class="  " src="/img/factorysm.png" alt="" width="370" height="230" /></a><p class="wp-caption-text">The cloud factory, working overtime for Glasgow</p></div>
<div class="wp-caption aligncenter" style="width: 380px"><a href="/img/steps.jpg" rel="shadowbox[sbpost-169];player=img;"><img class=" " src="/img/stepssm.png" alt="" width="370" height="230" /></a><p class="wp-caption-text">Each time I looked up, the dark triangles drew closer and moved down a level. I woke up tasting blood, the last 8 hours unaccounted for, with the ability to recite Pi to a million decimal places.</p></div>
<div class="wp-caption aligncenter" style="width: 380px"><a href="/img/peer.jpg" rel="shadowbox[sbpost-169];player=img;"><img class=" " src="/img/peersm.png" alt="" width="370" height="230" /></a><p class="wp-caption-text">I like to be upfront with my UFO spoofs when it comes to suspension mechanisms.</p></div>
<div class="wp-caption aligncenter" style="width: 380px"><a href="/img/rust2.jpg" rel="shadowbox[sbpost-169];player=img;"><img class=" " src="/img/rust2sm.png" alt="" width="370" height="230" /></a><p class="wp-caption-text">A sculpture of rust</p></div>
<div class="wp-caption aligncenter" style="width: 380px"><a href="/img/shut.jpg" rel="shadowbox[sbpost-169];player=img;"><img class=" " src="/img/shutsm.png" alt="" width="370" height="230" /></a><p class="wp-caption-text">Shot? Shut???</p></div>
<div class="wp-caption aligncenter" style="width: 380px"><a href="/img/creep1.jpg" rel="shadowbox[sbpost-169];player=img;"><img class=" " src="/img/creep1sm.png" alt="" width="370" height="230" /></a><p class="wp-caption-text">I know it&#39;s rude to take overt pictures of people walking past in the street, but I genuinely don&#39;t think she saw me do it.</p></div>
<div class="wp-caption aligncenter" style="width: 380px"><a href="/img/creep2.jpg" rel="shadowbox[sbpost-169];player=img;"><img class=" " src="/img/creep2sm.png" alt="" width="370" height="230" /></a><p class="wp-caption-text">I could just detect a continual dull scream emanating from within this bronze sculpture. Neat.</p></div>
<div class="wp-caption aligncenter" style="width: 380px"><a href="/img/tobesnout1.jpg" rel="shadowbox[sbpost-169];player=img;"><img class=" " src="/img/tobesnout1sm.png" alt="" width="370" height="230" /></a><p class="wp-caption-text">Labradogs sleep with both eyes closed, but with nostrils primed and twitching, ready for action at the drop of a cake.</p></div>
<div class="wp-caption aligncenter" style="width: 380px"><a href="/img/tobesnout2.jpg" rel="shadowbox[sbpost-169];player=img;"><img class=" " src="/img/tobesnout2sm.png" alt="" width="370" height="230" /></a><p class="wp-caption-text">ORGANIC MATTER DETECTED IN POCKET OF PHOTOGRAPHER</p></div>
<div class="wp-caption aligncenter" style="width: 380px"><a href="/img/famille.jpg" rel="shadowbox[sbpost-169];player=img;"><img class=" " src="/img/famillesm.png" alt="" width="370" height="230" /></a><p class="wp-caption-text">&quot;And this is some sort of typewriter-television, is it?&quot;</p></div>
<div class="wp-caption aligncenter" style="width: 380px"><a href="/img/nics2.jpg" rel="shadowbox[sbpost-169];player=img;"><img class=" " src="/img/nics2sm.png" alt="" width="370" height="230" /></a><p class="wp-caption-text">Hey, this is an OK photo. Maybe I&#39;m starting to understand people...?</p></div>
<div class="wp-caption aligncenter" style="width: 380px"><a href="/img/nics1.jpg" rel="shadowbox[sbpost-169];player=img;"><img class="  " src="/img/nics1sm.png" alt="" width="370" height="230" /></a><p class="wp-caption-text">- No. I selected inanimate objects for focus over actual human beings.</p></div>
<div class="wp-caption aligncenter" style="width: 380px"><a href="/img/prints1.jpg" rel="shadowbox[sbpost-169];player=img;"><img class=" " src="/img/prints1sm.png" alt="" width="370" height="230" /></a><p class="wp-caption-text">What animal could have made such tracks? A bird?</p></div>
<div class="wp-caption aligncenter" style="width: 380px"><a href="/img/charge2.jpg" rel="shadowbox[sbpost-169];player=img;"><img class="  " src="/img/charge2sm.png" alt="" width="370" height="230" /></a><p class="wp-caption-text">Uh- a large, wingless, galloping bird...?</p></div>
<div class="wp-caption aligncenter" style="width: 380px"><a href="/img/charge1.jpg" rel="shadowbox[sbpost-169];player=img;"><img class=" " src="/img/charge1sm.png" alt="" width="370" height="230" /></a><p class="wp-caption-text">A self-duplicating, seemingly aggressive but ultimately friendly group of birds...???</p></div>
<div class="wp-caption aligncenter" style="width: 380px"><a href="/img/prints2.jpg" rel="shadowbox[sbpost-169];player=img;"><img class=" " src="/img/prints2sm.png" alt="" width="370" height="230" /></a><p class="wp-caption-text">Yep. Bird tracks.</p></div>
]]></content:encoded>
			<wfw:commentRss>http://akineticblog.com/?feed=rss2&#038;p=169</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>With a graphics tablet, you can draw!</title>
		<link>http://akineticblog.com/?p=140</link>
		<comments>http://akineticblog.com/?p=140#comments</comments>
		<pubDate>Wed, 23 Dec 2009 19:56:37 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[Graphic Design]]></category>
		<category><![CDATA[Images]]></category>

		<guid isPermaLink="false">http://blog.kinetype.com/?p=140</guid>
		<description><![CDATA[Continuing a retrospective theme (definitely not stalling while I work out what fresh material I’ll put here), I thought I’d stick up a few of the things I’ve made with the graphics tablet Santa brought me last year &#8211; plus one I’d borrowed in 2007. ‘Tis very much the season once again and, conveniently, a ]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">Continuing a retrospective theme (definitely not stalling while I work out what fresh material I’ll put here), I thought I’d stick up a few of the things I’ve made with the graphics tablet Santa brought me last year &#8211; plus one I’d borrowed in 2007. ‘Tis very much the season once again and, conveniently, a few of these were Christmas cards I’d scrawled for family members a few years back. Topicality, hot damn! High-five, Santa Christ.</p>
<p style="text-align: left;">Firstly, the cards. Not much to say; they’re not good, but that’s all part of starting out, right?</p>
<p style="text-align: center;"><a href="/img/findad.png" rel="shadowbox[sbpost-140];player=img;"><img title="actual vanity plate" src="/img/dcsm.png" width="218" height="170" /></a> <a href="/img/finem.png" rel="shadowbox[sbpost-140];player=img;"><img title="lol, cats" src="/img/emsm.png" width="218" height="170" /></a><br/><a href="/img/finphil.png" rel="shadowbox[sbpost-140];player=img;"><img title="this was once current humour" src="/img/smsm.png" width="218" height="170" /></a> <a href="/img/fincc.png" rel="shadowbox[sbpost-140];player=img;"><img title="for geeks or something?" src="/img/ccsm.png" width="218" height="170" /></a></p>
<p style="text-align: left;">This year, my sister got married, and had asked me to assemble a design for the invitations. The process was a little strained thanks to misaligned visions and limited creative freedom but we settled on something eventually:</p>
<p style="text-align: center;"><a href="/img/treedux.png" rel="shadowbox[sbpost-140];player=img;"><img title="a brace of conies" src="/img/treeduxsm.png" width="218" height="170" /></a></p>
<p style="text-align: left;">For the birthday of chum Andy, I made a t-shirt design based on <a href="/img/steak.jpg" rel="shadowbox[sbpost-140];player=img;">this Korean sign</a> (which may or may not be authentic accidental Engrish), and on his love of swine-based consumables. I then had it printed by <a href="http://www.teeshirtnation.com/">these chaps</a>.</p>
<p style="text-align: center;"><a href="/img/bacohydrates.png" rel="shadowbox[sbpost-140];player=img;"><img title="bacon is good for me" src="/img/bacosm.png" width="218" height="170" /></a></p>
<p style="text-align: left;">More recently, it was Kris’ birthday, and so I drew a t-shirt for him too. The inspiration for this came from the evening he and I were playing at an open mic night. Bless his timid soul, he was nervous about singing, and so we conjured an alter ego for him to assume while on stage. Thus, JERKASAURUS REX was born! Rawr.</p>
<p style="text-align: center;"><a href="/img/diplod00fus.png" rel="shadowbox[sbpost-140];player=img;"><img title="this dino gives no fuck" src="/img/dinosm.png" width="218" height="170" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://akineticblog.com/?feed=rss2&#038;p=140</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Kinetype Family</title>
		<link>http://akineticblog.com/?p=63</link>
		<comments>http://akineticblog.com/?p=63#comments</comments>
		<pubDate>Mon, 30 Nov 2009 23:47:33 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[Meta]]></category>
		<category><![CDATA[admin]]></category>
		<category><![CDATA[hope park square]]></category>
		<category><![CDATA[INTERNET]]></category>
		<category><![CDATA[kinetic typography]]></category>

		<guid isPermaLink="false">http://blog.kinetype.com/?p=63</guid>
		<description><![CDATA[While this endeavour is still in its infancy, I thought it’d make sense to itemise the facets of my substantial (for which, read: insubstantial) web presence, and the plans I have for each. Firstly, there is this thing you are reading: the blog; blog-dot-kinetype-dot-com; http://blog.kinetype.com/ Here, I’ll try to keep things mostly (if not strictly) ]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">While this endeavour is still in its infancy, I thought it’d make sense to itemise the facets of my <em>substantial</em> (for which, read: insubstantial) web presence, and the plans I have for each.</p>
<ul>
<li style="text-align: left;"><a href="http://blog.kinetype.com/"><img class=" alignleft" style="margin: 2px 15px;" title="you are here" src="/img/blogthumb.png" alt="blog" width="183" height="114" /></a>Firstly, there is this thing you are reading: the blog; blog-dot-kinetype-dot-com; <a href="../">http://blog.kinetype.com/</a> Here, I’ll try to keep things mostly (if not strictly) business. You, gentle reader, probably don’t need to know of the peculiarities of my digestive tract, nor read my ideas for Harry Potter / Twilight crossover fiction. I have a twitter account for that. Posts will mostly be split across Flash projects, recorded music, photography, graphic design and maybe some writing – the things I like to do in spite of all the evidence and death threats.</li>
<li style="text-align: left;"><a href="http://www.kinetype.com/"><img class=" alignleft" style="margin: 2px 15px;" title="what are these moving words?" src="/img/kinthumb.png" alt="blog" width="183" height="114" /></a>Next, there’s the WWW subdomain, <a href="http://www.kinetype.com/">http://www.kinetype.com/</a> This is where I stuck the prickly fruits of my undergrad dissertation, submitted earlier this year. It&#8217;s for autonomously animating English text, <span>à la</span> human-authored kinetic typography, built in Flash, Python and Flex. It’s somewhat unpolished, but half of the planned improvements are coded up and ready to go, so it’ll be shiny in no time. Yeah.</li>
<li style="text-align: left;"><a href="http://hps.kinetype.com/"><img class=" alignleft" style="margin: 2px 15px;" title="queer pork shapes" src="/img/hpsthumb.png" alt="blog" width="183" height="114" /></a>Lastly, I’ve re-uploaded an old site of mine, Hope Park Square, to the HPS subdomain, <a href="http://hps.kinetype.com/">http://hps.kinetype.com/</a> Back only for posterity, this train wreck lasted just six months during 2005, before the card I paid the hosting fees with expired. While I’d put up with them passively, I couldn’t bring myself to register my new details and voluntarily give skanky hosts Angelfire more money. Plus, I had a girlfriend by that point; my need to charm internet babes had been quelled.</li>
</ul>
<p>And those are the things of mine on THE INTERNET.</p>
]]></content:encoded>
			<wfw:commentRss>http://akineticblog.com/?feed=rss2&#038;p=63</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Webcam experiment: dynamic pseudo-3D modelling</title>
		<link>http://akineticblog.com/?p=26</link>
		<comments>http://akineticblog.com/?p=26#comments</comments>
		<pubDate>Tue, 24 Nov 2009 21:28:31 +0000</pubDate>
		<dc:creator>Adam</dc:creator>
				<category><![CDATA[3D]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[generative art]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[webcam]]></category>

		<guid isPermaLink="false">http://blog.kinetype.com/?p=26</guid>
		<description><![CDATA[This is an extension of a little app I made around a year ago, which coloured and filled boxes with hex values based on the sampled colours of an image. Like this!: That, however, was inspired by &#8230; based on &#8230; blatantly copied from some images by the hugely talented Luigi De Aloisio. In the ]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">This is an extension of a little app I made around a year ago, which coloured and filled boxes with hex values based on the sampled colours of an image. Like this!:</p>
<p style="text-align: center;"><a href="/img/blood.png" rel="shadowbox[sbpost-26];player=img;"><img class="alignnone" title="bloodface" src="/img/bloodSM.png" alt="" width="391" height="251" /></a></p>
<p style="text-align: left;">That, however, was <span style="text-decoration: line-through;">inspired by</span> &#8230; <span style="text-decoration: line-through;">based on</span> &#8230; blatantly copied from some images by the hugely talented <a title="nostatic.it" href="http://www.nostatic.it/progetti">Luigi De Aloisio</a>.</p>
<p style="text-align: left;">In the name of originality, and boredom, I more recently hooked the same function up to the Camera class, and updated the grid every frame. Useful if you need to know precisely what web colours your face is made up of, but the whole challenge with the original app was finding a good source image that would remain discernible once grid-ified, so most of the time you’re stuck with meaningless coloured blocks. (As a lifelong fan of Sesame Street, that was enough for me, but I’m trying to make a career out of this stuff.)</p>
<p style="text-align: left;">Removing the text and squarin’ up the rectangles, you effectively get an over-pixelated form of the video feed – just like having a webcam from the 90s! I thought it might be interesting to dynamically update the z-axis position of each cell, and overall brightness seemed to be the most sensible property to sample. It looks like this:</p>
<p style="text-align: center;"><a rel="shadowbox;height=400;width=600;options={flashParams:{bgcolor:'#ffffff',allowfullscreen:false}}" href="/fl/flatCell.swf"><img class="alignnone" title="Oranges are good for you. Click for go!" src="/img/orange.png" alt="" /></a></p>
<p style="text-align: left;">So, to recap what’s happening: per frame, the feed from the camera is sampled at regular intervals, across a grid of specified resolution, to capture the pixel colour at each point (I couldn’t afford the overhead of averaging across each blocks’ area). On the first pass, for each cell, a Shape object is created, filled with a square, and added to the grid array. On subsequent passes, each Shape object’s colorTransform property is set to the sampled pixel colour (computationally preferable to clearing and redrawing the square, but not hugely). The R, G and B values composing the cell colour are then averaged and normalised, before being used to move the cell backwards along the z-axis by an amount proportional to its darkness. (Because darker things are further away, sometimes, maybe&#8230;? It more or less works for the shadowy areas in faces anyway.)</p>
<p style="text-align: left;">The squares look ok, but with the grid floating in 3D space, I thought it might look cooler to use solid blocks instead. Unfortunately your CPU will not find it cooler. Quite the opposite; performance isn’t great with this one:</p>
<p style="text-align: center;"><a rel="shadowbox;height=400;width=600;options={flashParams:{bgcolor:'#ffffff',allowfullscreen:false}}" href="/fl/cubeCell.swf"><img class="alignnone" title="My hand isn't really that fat. Click for blocks!" src="/img/cubehand.png" alt="" /></a></p>
<p style="text-align: left;">The code differences here involved replacing each Shape object with a Sprite (in order to contain the multiple cube sides), and the four extra panels were drawn and rotated into position. Side colours were varied to make the blocks appear shaded, and on updating the colorTransform property, the three channel multipliers were each set to 0.6, in order to avoid washing the shading out altogether.</p>
<p style="text-align: left;">Next steps? As I&#8217;m yet to identify a practical application for all this, there&#8217;s little need to have it running in a browser or on Flash at all, so I may take a crack at porting it to <a href="http://processing.org/">Processing</a> or C++ with OpenGL, for the perfomance gain. It might be nice to see it draw one box per pixel, or to to use the brightness to set the Z co-ordinate of vertices rather than faces, and then stretch the video over a surface. A plain ol&#8217; wireframe mesh might look nice too.</p>
<p style="text-align: left;">Any feedback on performance would be great.</p>
<p>&#8212;<br />
<strong>Edit</strong>: Source code uploaded to my github repository <a href="https://github.com/hanenbro/WebcamCubeGri">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://akineticblog.com/?feed=rss2&#038;p=26</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>FRIST POTS!!1!</title>
		<link>http://akineticblog.com/?p=3</link>
		<comments>http://akineticblog.com/?p=3#comments</comments>
		<pubDate>Sun, 01 Nov 2009 17:27:20 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Meta]]></category>

		<guid isPermaLink="false">http://blog.kinetype.com/?p=3</guid>
		<description><![CDATA[Ah- testing: one, two]]></description>
			<content:encoded><![CDATA[<p>Ah- testing: one, two.</p>
]]></content:encoded>
			<wfw:commentRss>http://akineticblog.com/?feed=rss2&#038;p=3</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
